全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1272
推到 Plurk!
推到 Facebook!

無法發mail第二次!再同一from上

答題得分者是:hagar
stevenyehs
一般會員


發表:12
回覆:11
積分:4
註冊:2004-06-09

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-06-28 15:54:27 IP:203.75.xxx.xxx 未訂閱
我在新增一筆資料後會發mail給使用者,第一次可以成功 但是在新增第二筆時就會出現錯誤訊息,如下: --------------------------- Debugger Exception Notification --------------------------- Project MFG.exe raised exception class EAccessViolation with message 'Access violation at address 00404624 in module 'MFG.EXE'. Read of address FFFFFFFF'. Process stopped. Use Step or Run to continue. --------------------------- OK   Help    --------------------------- 但是若是跳出程式,再進去一次,就能發mail成功,但是一樣無法發第二次. 但資料庫有寫進去. 以下是我的程式片斷: with IdMessage1 do                  begin                     From.Address:='SYSTEM@EPISIL.COM';                     From.Name:='無塵衣系統'; //自動產生成name Recipients.EMailAddresses :='steven_yehs@episil.com'; Subject :='申請無塵衣'; // Subject: header IdMessage1.MessageParts.Clear; BODY.Clear; Body.Text :='工號:' comboBox1.Text ',姓名:' comboBOX2.Text ',部門:' comboBOX3.Text; end; with IdSMTP1 do begin host:='ma101tw.episil.com'; name:='SYSTEM'; //請注意indy81以上為username try connect; send(IdMessage1); finally disconnect; end; end; 請各位前輩幫幫忙,我是用公司的內部網路傳的,利用notes來收發信的 感謝協助!
------
Delphi 初學者
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-06-28 18:51:05 IP:202.39.xxx.xxx 未訂閱
先檢查看是哪一行觸發 Access Violation 的
stevenyehs
一般會員


發表:12
回覆:11
積分:4
註冊:2004-06-09

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-06-29 11:13:48 IP:203.75.xxx.xxx 未訂閱
with IdSMTP1 do  <------ begin host:='ma101tw.episil.com'; <----- 進入這裡就觸發了.. 我檢查過了還是搞不懂??    
------
Delphi 初學者
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-06-29 11:29:23 IP:202.39.xxx.xxx 未訂閱
可貼出整段嗎? (貼程式碼的時候, 請按 # 按鍵, 將程式碼包起來.) 另外, 您用 Indy 8.1 有此問題 要不要改用 Indy 9 呢? -- Everything I say is a lie.
stevenyehs
一般會員


發表:12
回覆:11
積分:4
註冊:2004-06-09

發送簡訊給我
#5 引用回覆 回覆 發表時間:2004-06-29 15:26:40 IP:203.75.xxx.xxx 未訂閱
 
unit uMFGM01;    interface    uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Grids, DBGrids, StdCtrls, Buttons, ExtCtrls, DB, DBTables,
  IdMessage, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient,
  IdMessageClient, IdSMTP;
type
  TfmMFGM01 = class(TForm)
    Panel1: TPanel;
    Panel2: TPanel;
    Panel3: TPanel;
    Panel4: TPanel;
    Panel5: TPanel;
    Label1: TLabel;
    Panel6: TPanel;
    Label2: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    BitBtn1: TBitBtn;
    BitBtn3: TBitBtn;
    BitBtn4: TBitBtn;
    Button1: TButton;
    Label7: TLabel;
    Label3: TLabel;
    Label6: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    ComboBox1: TComboBox;
    ComboBox2: TComboBox;
    ComboBox3: TComboBox;
    ComboBox4: TComboBox;
    ComboBox5: TComboBox;
    Edit1: TEdit;
    Edit2: TEdit;
    QRYEMP: TQuery;
    qryEMPID: TQuery;
    qryEMPNAME: TQuery;
    Label10: TLabel;
    Label11: TLabel;
    qryIns: TQuery;
    qryUpdate: TQuery;
    Timer1: TTimer;
    DBGrid1: TDBGrid;
    DataSource1: TDataSource;
    qryCLOTHES: TQuery;
    qryDel: TQuery;
    BitBtn2: TBitBtn;
    QRYEMPEMPNO: TStringField;
    QRYEMPCNAME: TStringField;
    QRYEMPDEPT: TStringField;
    qryDEPT: TQuery;
    qryDEPTDEPT: TStringField;
    qryCLOTHESEMPNO: TStringField;
    qryCLOTHESNAME: TStringField;
    qryCLOTHESDEPTNO: TStringField;
    qryCLOTHESCLASSES: TStringField;
    qryCLOTHESTALL: TStringField;
    qryCLOTHESWEIGHT: TStringField;
    qryCLOTHESREMARK: TStringField;
    IdSMTP1: TIdSMTP;
    IdMessage1: TIdMessage;
    Label12: TLabel;
    Edit3: TEdit;
    QRYEMPDEPTNAME: TStringField;
    qryCLOTHESDEPTNAME: TStringField;
    qryCLOTHESSYSTIME: TIntegerField;
    procedure FormCreate(Sender: TObject);
    procedure ComboBox1DropDown(Sender: TObject);
    procedure ComboBox2DropDown(Sender: TObject);
    procedure ComboBox3DropDown(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure ComboBox1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure ComboBox1Select(Sender: TObject);
    procedure ComboBox2KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn4Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure DBGrid1CellClick(Column: TColumn);
    procedure ComboBox2Select(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;    var
  fmMFGM01: TfmMFGM01;    implementation    {$R *.dfm}    procedure TfmMFGM01.FormCreate(Sender: TObject);
begin
        qryCLOTHES.CLOSE;
        qryCLOTHES.Open;
end;    procedure TfmMFGM01.ComboBox1DropDown(Sender: TObject);
begin
        QRYEMP.Close;
        QRYEMP.Open;
        COMBOBOX1.Clear;
        while not QRYEMP.Eof do
        begin
          COMBOBOX1.Items.Add(QRYEMPEMPNO.AsString);
          QRYEMP.Next;
        end;
        QRYEMP.Close;
end;    procedure TfmMFGM01.ComboBox2DropDown(Sender: TObject);
begin
        QRYEMP.Close;
        QRYEMP.Open;
        COMBOBOX2.Clear;
  //      COMBOBOX2.Items.Add('ALL');
        while not QRYEMP.Eof do
        begin
          COMBOBOX2.Items.Add(QRYEMPCNAME.AsString);
          QRYEMP.Next;
        end;
        QRYEMP.Close;
//        COMBOBOX2.ItemIndex := 0;
//        COMBOBOX2.Text := COMBOBOX2.Items[0];
end;    procedure TfmMFGM01.ComboBox3DropDown(Sender: TObject);
begin
        qryDEPT.Close;
        qryDEPT.Open;
        COMBOBOX3.Clear;
        while not qryDEPT.Eof do
        begin
          COMBOBOX3.Items.Add(qryDEPTDEPT.AsString);
          qryDEPT.Next;
        end;
        qryDEPT.Close;
end;    procedure TfmMFGM01.BitBtn3Click(Sender: TObject);
begin
        CLOSE;
end;    procedure TfmMFGM01.Button1Click(Sender: TObject);
begin
        COMBOBOX1.CLEAR;
        COMBOBOX2.CLEAR;
        COMBOBOX3.CLEAR;
        EDIT1.Clear;
        EDIT2.Clear;
        edit3.Clear;
        COMBOBOX4.ItemIndex := 0;
        COMBOBOX4.Text := COMBOBOX4.Items[0];
        COMBOBOX5.ItemIndex := 0;
        COMBOBOX5.Text := COMBOBOX5.Items[0];
end;    procedure TfmMFGM01.ComboBox1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
        if (key in [13]) then
        begin
            qryEMPID.close;
            qryEMPID.ParamByName('empno').asstring:=combobox1.text;
            qryEMPID.open;
            combobox2.Text:=qryEMPID.Fieldbyname('CNAME').asString;
            combobox3.text:=qryEMPID.Fieldbyname('DEPT').asString;
            EDIT3.Text:=qryEMPID.Fieldbyname('DEPTNAME').asString;
        END
end;    procedure TfmMFGM01.ComboBox1Select(Sender: TObject);
begin
        qryEMPID.close;
            qryEMPID.ParamByName('empno').asstring:=combobox1.text;
            qryEMPID.open;
            combobox2.Text:=qryEMPID.Fieldbyname('CNAME').asString;
            combobox3.text:=qryEMPID.Fieldbyname('DEPT').asString;
            EDIT3.Text:=qryEMPID.Fieldbyname('DEPTNAME').asString;
end;    procedure TfmMFGM01.ComboBox2KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
        if (key in [13]) then
        begin
            qryEMPNAME.close;
            qryEMPNAME.ParamByName('cname').asstring:=combobox2.text;
            qryEMPNAME.open;
            combobox1.Text:=qryEMPNAME.Fieldbyname('EMPNO').asString;
            combobox3.text:=qryEMPNAME.Fieldbyname('DEPT').asString;
            EDIT3.text:=qryEMPNAME.Fieldbyname('DEPTNAME').asString;
        END
end;    procedure TfmMFGM01.BitBtn1Click(Sender: TObject);
begin
        If combobox1.Text<>'' then
        begin
            if qryCLOTHES.Locate('EMPNO',combobox1.Text,[]) then
            begin
                 SHOWMESSAGE('此工號已申請過,請聯絡支援課人員');
            end
            else
            begin
                qryIns.Close;
                qryIns.ParamByName('empno').AsString:=combobox1.Text;
                qryIns.ParamByName('name').AsString:=combobox2.Text;
                qryIns.ParamByName('deptno').AsString:=combobox3.Text;
                qryIns.ParamByName('deptname').AsString:=EDIT3.Text;
                qryIns.ParamByName('classes').Asstring:=combobox4.Text;
                qryIns.ParamByName('tall').AsString:=edit1.Text;
                qryIns.ParamByName('weight').AsString:=edit2.Text;
                qryIns.ParamByName('REMARK').AsString:=combobox5.Text;
                qryIns.ExecSQL;
                //寄email出去
                 with IdMessage1 do
                 begin
                    From.Address:='SYSTEM@EPISIL.COM';
                    From.Name:='無塵衣系統'; //自動產生成name
//                    ContentType:='text/plain';
                   //Recipients.EMailAddresses := 'ren_yi_chiang@episil.com,peter tseng@episil.com';
                    Recipients.EMailAddresses :='steven_yehs@episil.com';
                    Subject :='申請無塵衣'; // Subject: header
                    IdMessage1.MessageParts.Clear;
                    BODY.Clear;
                    Body.Text :='工號:' comboBox1.Text ',姓名:' comboBOX2.Text ',部門:' comboBOX3.Text;
                 end;                     with IdSMTP1 do
                 begin
                    host:='ma101tw.episil.com';
                    name:='SYSTEM';   //請注意indy81以上為username
                    try
                       connect;
                       send(IdMessage1);
                       //showmessage('傳送成功');
                    finally
                       disconnect;
                       //showmessage('傳送失敗');
                    end;
                 end;
                qryCLOTHES.CLOSE;
                qryCLOTHES.Open;
                qryCLOTHES.CLOSE;
                qryCLOTHES.Open;
                button1.Click;
            end
        end
        else
                showmessage('您尚未輸入工號或姓名,請重新輸入');
end;    procedure TfmMFGM01.BitBtn4Click(Sender: TObject);
begin
                qryUpdate.Close;
                qryUpdate.ParamByName('empno').AsString:=combobox1.Text;
                qryUpdate.ParamByName('name').AsString:=combobox2.Text;
                qryUpdate.ParamByName('deptno').AsString:=combobox3.Text;
                qryUpdate.ParamByName('deptname').AsString:=edit3.Text;
                qryUpdate.ParamByName('classes').Asstring:=combobox4.Text;
                qryUpdate.ParamByName('tall').AsString:=edit1.Text;
                qryUpdate.ParamByName('weight').AsString:=edit2.Text;
                qryUpdate.ParamByName('remark').AsString:=combobox5.Text;
                qryUpdate.ExecSQL;
                //寄email出去
                 with IdMessage1 do
                 begin
                    From.Address:='SYSTEM@EPISIL.COM';
                    From.Name:='無塵衣系統'; //自動產生成name
//                    ContentType:='text/plain';
                    //Recipients.EMailAddresses := 'ren_yi_chiang@episil.com,peter tseng@episil.com';
                    Recipients.EMailAddresses :='steven_yehs@episil.com';
                    Subject :='修改無塵衣資訊'; { Subject: header }
                    IdMessage1.MessageParts.Clear;
                    BODY.Clear;
                    Body.Text :='工號:' comboBox1.Text ',姓名:' comboBOX2.Text ',部門:' comboBOX3.Text;
                 end;                     with IdSMTP1 do
                 begin
                    //host:='ma101tw.episil.com';
                    host:='EPSMA01TW.EPISIL.com';
                    name:='SYSTEM';   //請注意indy81以上為username
                    try
                       connect;
                       send(IdMessage1);
                       //showmessage('傳送成功');
                    finally
                       disconnect;
                       //showmessage('傳送失敗');
                    end;
                 end;
                qryCLOTHES.CLOSE;
                qryCLOTHES.Open;
                qryCLOTHES.CLOSE;
                qryCLOTHES.Open;
                button1.Click;
end;    procedure TfmMFGM01.Timer1Timer(Sender: TObject);
begin
        LABEL1.Caption:=DateTimeToStr(Now);
end;    procedure TfmMFGM01.BitBtn2Click(Sender: TObject);
begin
  if Application.MessageBox('您確定要刪除嗎?','刪除確認',MB_YesNo MB_DEFBUTTON2 MB_IconStop MB_ApplModal)=IDYES THEN
  begin
       qryDel.close;
       qryDel.ParamByName('empno').AsString:=combobox1.Text;
       qryDel.ExecSQL;
       qryCLOTHES.CLOSE;
       qryCLOTHES.Open;
       qryCLOTHES.CLOSE;
       qryCLOTHES.Open;
       button1.Click;
  end;
end;    procedure TfmMFGM01.DBGrid1CellClick(Column: TColumn);
begin
        combobox1.Text:= qryCLOTHESEMPNO.AsString;
        combobox2.Text:= qryCLOTHESNAME.AsString;
        combobox3.Text:= qryCLOTHESDEPTNO.AsString;
        combobox4.Text:= qryCLOTHESCLASSES.AsString;
        EDIT1.Text:= qryCLOTHESTALL.AsString;
        EDIT2.Text:= qryCLOTHESWEIGHT.AsString;
        EDIT3.Text:= qryCLOTHESDEPTNAME.AsString;
        combobox5.Text:= qryCLOTHESREMARK.AsString;
end;    procedure TfmMFGM01.ComboBox2Select(Sender: TObject);
begin
            qryEMPNAME.close;
            qryEMPNAME.ParamByName('cname').asstring:=combobox2.text;
            qryEMPNAME.open;
            combobox1.Text:=qryEMPNAME.Fieldbyname('EMPNO').asString;
            combobox3.text:=qryEMPNAME.Fieldbyname('DEPT').asString;
            EDIT3.text:=qryEMPNAME.Fieldbyname('DEPTNAME').asString;
end;    end.
以上是我整支程式的內容. 感謝您的協助!
------
Delphi 初學者
stevenyehs
一般會員


發表:12
回覆:11
積分:4
註冊:2004-06-09

發送簡訊給我
#6 引用回覆 回覆 發表時間:2004-06-29 15:34:42 IP:203.75.xxx.xxx 未訂閱
 
unit uMFGM01;    interface    uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Grids, DBGrids, StdCtrls, Buttons, ExtCtrls, DB, DBTables,
  IdMessage, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient,
  IdMessageClient, IdSMTP;
type
  TfmMFGM01 = class(TForm)
    Panel1: TPanel;
    Panel2: TPanel;
    Panel3: TPanel;
    Panel4: TPanel;
    Panel5: TPanel;
    Label1: TLabel;
    Panel6: TPanel;
    Label2: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    BitBtn1: TBitBtn;
    BitBtn3: TBitBtn;
    BitBtn4: TBitBtn;
    Button1: TButton;
    Label7: TLabel;
    Label3: TLabel;
    Label6: TLabel;
    Label8: TLabel;
    Label9: TLabel;
    ComboBox1: TComboBox;
    ComboBox2: TComboBox;
    ComboBox3: TComboBox;
    ComboBox4: TComboBox;
    ComboBox5: TComboBox;
    Edit1: TEdit;
    Edit2: TEdit;
    QRYEMP: TQuery;
    qryEMPID: TQuery;
    qryEMPNAME: TQuery;
    Label10: TLabel;
    Label11: TLabel;
    qryIns: TQuery;
    qryUpdate: TQuery;
    Timer1: TTimer;
    DBGrid1: TDBGrid;
    DataSource1: TDataSource;
    qryCLOTHES: TQuery;
    qryDel: TQuery;
    BitBtn2: TBitBtn;
    QRYEMPEMPNO: TStringField;
    QRYEMPCNAME: TStringField;
    QRYEMPDEPT: TStringField;
    qryDEPT: TQuery;
    qryDEPTDEPT: TStringField;
    qryCLOTHESEMPNO: TStringField;
    qryCLOTHESNAME: TStringField;
    qryCLOTHESDEPTNO: TStringField;
    qryCLOTHESCLASSES: TStringField;
    qryCLOTHESTALL: TStringField;
    qryCLOTHESWEIGHT: TStringField;
    qryCLOTHESREMARK: TStringField;
    IdSMTP1: TIdSMTP;
    IdMessage1: TIdMessage;
    Label12: TLabel;
    Edit3: TEdit;
    QRYEMPDEPTNAME: TStringField;
    qryCLOTHESDEPTNAME: TStringField;
    qryCLOTHESSYSTIME: TIntegerField;
    procedure FormCreate(Sender: TObject);
    procedure ComboBox1DropDown(Sender: TObject);
    procedure ComboBox2DropDown(Sender: TObject);
    procedure ComboBox3DropDown(Sender: TObject);
    procedure BitBtn3Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure ComboBox1KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure ComboBox1Select(Sender: TObject);
    procedure ComboBox2KeyDown(Sender: TObject; var Key: Word;
      Shift: TShiftState);
    procedure BitBtn1Click(Sender: TObject);
    procedure BitBtn4Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure DBGrid1CellClick(Column: TColumn);
    procedure ComboBox2Select(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;    var
  fmMFGM01: TfmMFGM01;    implementation    {$R *.dfm}    procedure TfmMFGM01.FormCreate(Sender: TObject);
begin
        qryCLOTHES.CLOSE;
        qryCLOTHES.Open;
end;    procedure TfmMFGM01.ComboBox1DropDown(Sender: TObject);
begin
        QRYEMP.Close;
        QRYEMP.Open;
        COMBOBOX1.Clear;
        while not QRYEMP.Eof do
        begin
          COMBOBOX1.Items.Add(QRYEMPEMPNO.AsString);
          QRYEMP.Next;
        end;
        QRYEMP.Close;
end;    procedure TfmMFGM01.ComboBox2DropDown(Sender: TObject);
begin
        QRYEMP.Close;
        QRYEMP.Open;
        COMBOBOX2.Clear;
  //      COMBOBOX2.Items.Add('ALL');
        while not QRYEMP.Eof do
        begin
          COMBOBOX2.Items.Add(QRYEMPCNAME.AsString);
          QRYEMP.Next;
        end;
        QRYEMP.Close;
//        COMBOBOX2.ItemIndex := 0;
//        COMBOBOX2.Text := COMBOBOX2.Items[0];
end;    procedure TfmMFGM01.ComboBox3DropDown(Sender: TObject);
begin
        qryDEPT.Close;
        qryDEPT.Open;
        COMBOBOX3.Clear;
        while not qryDEPT.Eof do
        begin
          COMBOBOX3.Items.Add(qryDEPTDEPT.AsString);
          qryDEPT.Next;
        end;
        qryDEPT.Close;
end;    procedure TfmMFGM01.BitBtn3Click(Sender: TObject);
begin
        CLOSE;
end;    procedure TfmMFGM01.Button1Click(Sender: TObject);
begin
        COMBOBOX1.CLEAR;
        COMBOBOX2.CLEAR;
        COMBOBOX3.CLEAR;
        EDIT1.Clear;
        EDIT2.Clear;
        edit3.Clear;
        COMBOBOX4.ItemIndex := 0;
        COMBOBOX4.Text := COMBOBOX4.Items[0];
        COMBOBOX5.ItemIndex := 0;
        COMBOBOX5.Text := COMBOBOX5.Items[0];
end;    procedure TfmMFGM01.ComboBox1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
        if (key in [13]) then
        begin
            qryEMPID.close;
            qryEMPID.ParamByName('empno').asstring:=combobox1.text;
            qryEMPID.open;
            combobox2.Text:=qryEMPID.Fieldbyname('CNAME').asString;
            combobox3.text:=qryEMPID.Fieldbyname('DEPT').asString;
            EDIT3.Text:=qryEMPID.Fieldbyname('DEPTNAME').asString;
        END
end;    procedure TfmMFGM01.ComboBox1Select(Sender: TObject);
begin
        qryEMPID.close;
            qryEMPID.ParamByName('empno').asstring:=combobox1.text;
            qryEMPID.open;
            combobox2.Text:=qryEMPID.Fieldbyname('CNAME').asString;
            combobox3.text:=qryEMPID.Fieldbyname('DEPT').asString;
            EDIT3.Text:=qryEMPID.Fieldbyname('DEPTNAME').asString;
end;    procedure TfmMFGM01.ComboBox2KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
        if (key in [13]) then
        begin
            qryEMPNAME.close;
            qryEMPNAME.ParamByName('cname').asstring:=combobox2.text;
            qryEMPNAME.open;
            combobox1.Text:=qryEMPNAME.Fieldbyname('EMPNO').asString;
            combobox3.text:=qryEMPNAME.Fieldbyname('DEPT').asString;
            EDIT3.text:=qryEMPNAME.Fieldbyname('DEPTNAME').asString;
        END
end;    procedure TfmMFGM01.BitBtn1Click(Sender: TObject);
begin
        If combobox1.Text<>'' then
        begin
            if qryCLOTHES.Locate('EMPNO',combobox1.Text,[]) then
            begin
                 SHOWMESSAGE('此工號已申請過,請聯絡支援課人員');
            end
            else
            begin
                qryIns.Close;
                qryIns.ParamByName('empno').AsString:=combobox1.Text;
                qryIns.ParamByName('name').AsString:=combobox2.Text;
                qryIns.ParamByName('deptno').AsString:=combobox3.Text;
                qryIns.ParamByName('deptname').AsString:=EDIT3.Text;
                qryIns.ParamByName('classes').Asstring:=combobox4.Text;
                qryIns.ParamByName('tall').AsString:=edit1.Text;
                qryIns.ParamByName('weight').AsString:=edit2.Text;
                qryIns.ParamByName('REMARK').AsString:=combobox5.Text;
                qryIns.ExecSQL;
                //寄email出去
                 with IdMessage1 do
                 begin
                    From.Address:='SYSTEM@EPISIL.COM';
                    From.Name:='無塵衣系統'; //自動產生成name
//                    ContentType:='text/plain';
                   //Recipients.EMailAddresses := 'ren_yi_chiang@episil.com,peter tseng@episil.com';
                    Recipients.EMailAddresses :='steven_yehs@episil.com';
                    Subject :='申請無塵衣'; // Subject: header
                    IdMessage1.MessageParts.Clear;
                    BODY.Clear;
                    Body.Text :='工號:' comboBox1.Text ',姓名:' comboBOX2.Text ',部門:' comboBOX3.Text;
                 end;                     with IdSMTP1 do
                 begin
                    host:='ma101tw.episil.com';
                    name:='SYSTEM';   //請注意indy81以上為username
                    try
                       connect;
                       send(IdMessage1);
                       //showmessage('傳送成功');
                    finally
                       disconnect;
                       //showmessage('傳送失敗');
                    end;
                 end;
                qryCLOTHES.CLOSE;
                qryCLOTHES.Open;
                qryCLOTHES.CLOSE;
                qryCLOTHES.Open;
                button1.Click;
            end
        end
        else
                showmessage('您尚未輸入工號或姓名,請重新輸入');
end;    procedure TfmMFGM01.BitBtn4Click(Sender: TObject);
begin
                qryUpdate.Close;
                qryUpdate.ParamByName('empno').AsString:=combobox1.Text;
                qryUpdate.ParamByName('name').AsString:=combobox2.Text;
                qryUpdate.ParamByName('deptno').AsString:=combobox3.Text;
                qryUpdate.ParamByName('deptname').AsString:=edit3.Text;
                qryUpdate.ParamByName('classes').Asstring:=combobox4.Text;
                qryUpdate.ParamByName('tall').AsString:=edit1.Text;
                qryUpdate.ParamByName('weight').AsString:=edit2.Text;
                qryUpdate.ParamByName('remark').AsString:=combobox5.Text;
                qryUpdate.ExecSQL;
                //寄email出去
                 with IdMessage1 do
                 begin
                    From.Address:='SYSTEM@EPISIL.COM';
                    From.Name:='無塵衣系統'; //自動產生成name
//                    ContentType:='text/plain';
                    //Recipients.EMailAddresses := 'ren_yi_chiang@episil.com,peter tseng@episil.com';
                    Recipients.EMailAddresses :='steven_yehs@episil.com';
                    Subject :='修改無塵衣資訊'; { Subject: header }
                    IdMessage1.MessageParts.Clear;
                    BODY.Clear;
                    Body.Text :='工號:' comboBox1.Text ',姓名:' comboBOX2.Text ',部門:' comboBOX3.Text;
                 end;                     with IdSMTP1 do
                 begin
                    //host:='ma101tw.episil.com';
                    host:='EPSMA01TW.EPISIL.com';
                    name:='SYSTEM';   //請注意indy81以上為username
                    try
                       connect;
                       send(IdMessage1);
                       //showmessage('傳送成功');
                    finally
                       disconnect;
                       //showmessage('傳送失敗');
                    end;
                 end;
                qryCLOTHES.CLOSE;
                qryCLOTHES.Open;
                qryCLOTHES.CLOSE;
                qryCLOTHES.Open;
                button1.Click;
end;    procedure TfmMFGM01.Timer1Timer(Sender: TObject);
begin
        LABEL1.Caption:=DateTimeToStr(Now);
end;    procedure TfmMFGM01.BitBtn2Click(Sender: TObject);
begin
  if Application.MessageBox('您確定要刪除嗎?','刪除確認',MB_YesNo MB_DEFBUTTON2 MB_IconStop MB_ApplModal)=IDYES THEN
  begin
       qryDel.close;
       qryDel.ParamByName('empno').AsString:=combobox1.Text;
       qryDel.ExecSQL;
       qryCLOTHES.CLOSE;
       qryCLOTHES.Open;
       qryCLOTHES.CLOSE;
       qryCLOTHES.Open;
       button1.Click;
  end;
end;    procedure TfmMFGM01.DBGrid1CellClick(Column: TColumn);
begin
        combobox1.Text:= qryCLOTHESEMPNO.AsString;
        combobox2.Text:= qryCLOTHESNAME.AsString;
        combobox3.Text:= qryCLOTHESDEPTNO.AsString;
        combobox4.Text:= qryCLOTHESCLASSES.AsString;
        EDIT1.Text:= qryCLOTHESTALL.AsString;
        EDIT2.Text:= qryCLOTHESWEIGHT.AsString;
        EDIT3.Text:= qryCLOTHESDEPTNAME.AsString;
        combobox5.Text:= qryCLOTHESREMARK.AsString;
end;    procedure TfmMFGM01.ComboBox2Select(Sender: TObject);
begin
            qryEMPNAME.close;
            qryEMPNAME.ParamByName('cname').asstring:=combobox2.text;
            qryEMPNAME.open;
            combobox1.Text:=qryEMPNAME.Fieldbyname('EMPNO').asString;
            combobox3.text:=qryEMPNAME.Fieldbyname('DEPT').asString;
            EDIT3.text:=qryEMPNAME.Fieldbyname('DEPTNAME').asString;
end;    end.
以上是我整支程式的內容. 感謝您的協助!
------
Delphi 初學者
stevenyehs
一般會員


發表:12
回覆:11
積分:4
註冊:2004-06-09

發送簡訊給我
#7 引用回覆 回覆 發表時間:2004-06-29 17:55:39 IP:203.75.xxx.xxx 未訂閱
可是要安裝在Delphi6時, Complier會出現 "Remove IdAntiFreeze" 這個訊息, 按OK後,做Install時,會出現錯誤訊息, 好像是指缺少 IdAntiFreeze 這個物件 我檢查過後目錄下有這個物件. 我有按照版主的步驟做: Indy 9.00.10 安裝步驟: 1. 執行 Indy9_00_02_Src.EXE 安裝, 選擇安裝目錄, 如: C:\Program Files\Indy 2. Indy9_00_02_??.EXE (?? C4,C5,C6 表 BCB 4-6 , D4,D5,D6 表 Delphi 4-6) 3. 解壓 Indy9_00_03_Src.zip 到 Indy 安裝目錄 4. 解壓 IndyWin32_9_00_10_Src.zip 到 Indy 安裝目錄 5. 執行 Delphi 選 Tools-> Environment -> Library -> Library Path 加上 執行安裝目錄\Source, 如: C:\Program Files\Indy\Source 執行安裝目錄\??, 如: C:\Program Files\Indy\?? (?? 說明同上) 6. 離開 Delphi IDE 環境 7. 執行安裝目錄下的\Source\Full??.bat (?? 說明同上) 7-1:打開 dcindy??.dpk,並將它編譯完成後,才可。 8. 執行 Delphi 會看到 Indy 元件共 5 個頁面. 但是卻還是不行. 麻煩一下吧!
------
Delphi 初學者
hagar
版主


發表:143
回覆:4056
積分:4445
註冊:2002-04-14

發送簡訊給我
#8 引用回覆 回覆 發表時間:2004-06-29 18:35:39 IP:202.39.xxx.xxx 未訂閱
小弟只 copy 寄的那部份來測, 環境為 Delph 5 與 Indy 9.0.14 並不會出現 Access Violation 另外, 您在安裝新版的 Indy 之前, 有先移除舊版的 Indy 嗎? -- Everything I say is a lie.
stevenyehs
一般會員


發表:12
回覆:11
積分:4
註冊:2004-06-09

發送簡訊給我
#9 引用回覆 回覆 發表時間:2004-06-30 17:37:30 IP:203.75.xxx.xxx 未訂閱
謝謝 我是用D6的 得卻是用D5就可以了 謝謝
------
Delphi 初學者
系統時間:2024-04-29 20:04:39
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!