請問如何用 Outlook Express 寄信 ? |
缺席
|
pcboy
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:177 回覆:1838 積分:1463 註冊:2004-01-13 發送簡訊給我 |
請問如何用 Outlook Express 寄信 ? (下面是用 Outlook 寄信的範例)
<textarea class="delphi" rows="10" cols="60" name="code"> uses ComObj; procedure TForm1.Button1Click(Sender: TObject); const olMailItem = 0; var X,K: integer; Outlooker, MailItem: OLEVariant; begin try Outlooker := GetActiveOleObject('Outlook.Application'); except Outlooker := CreateOleObject('Outlook.Application'); end; K:= 0; repeat K:= K 1; X:= random(100000); MailItem := Outlooker.CreateItem(olMailItem); MailItem.Recipients.Add('xxx@xxx.com'); MailItem.Subject := '信件標題' ; MailItem.Body := '信件內容'; MailItem.Attachments.Add('c:\xxx.zip'); MailItem.Send; until K= 10; end; procedure TForm1.FormCreate(Sender: TObject); begin randomize; end; </textarea>
------
能力不足,求助於人;有能力時,幫幫別人;如果您滿意答覆,請適時結案! 子曰:問有三種,不懂則問,雖懂有疑則問,雖懂而想知更多則問! 編輯記錄
pcboy 重新編輯於 2007-07-14 09:21:44, 註解 無‧
|
supman
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:29 回覆:770 積分:924 註冊:2002-04-22 發送簡訊給我 |
您是要這個嗎?
uses shellapi; ShellExecute(0,nil,'mailto:abc@aaa.com.tw?subject=主題&body=內文',nil,nil,sw_showdefault); http://delphi.ktop.com.tw/topic.php?topic_id=42523
http://delphi.ktop.com.tw/topic.php?TOPIC_ID=22807 不過附加檔案似乎會有問題。 發表人 - supman 於 2005/07/01 21:06:10
|
pcboy
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:177 回覆:1838 積分:1463 註冊:2004-01-13 發送簡訊給我 |
不是耶
ShellExecute(0,nil,'mailto:abc@aaa.com.tw?subject=主題&body=內文',nil,nil,sw_showdefault);
只做到跳出 Outlook Express 畫面, 還是要靠手動寄信 如果要寄 1000 或 10000 封, 不可能手動按一萬次
會想用 Outlook Express , 其實是為了看看能否使用 Outlook Express 直接做加簽動作 (之前問過加簽寄信, 沒有人會)
而那台電腦沒有 Outlook (不方便安裝)
------
能力不足,求助於人;有能力時,幫幫別人;如果您滿意答覆,請適時結案! 子曰:問有三種,不懂則問,雖懂有疑則問,雖懂而想知更多則問! |
pcboy
版主 ![]() ![]() ![]() ![]() ![]() ![]() 發表:177 回覆:1838 積分:1463 註冊:2004-01-13 發送簡訊給我 |
|
a2002lee
一般會員 ![]() ![]() 發表:0 回覆:1 積分:0 註冊:2004-10-30 發送簡訊給我 |
|
kevin2004
資深會員 ![]() ![]() ![]() ![]() ![]() 發表:18 回覆:463 積分:416 註冊:2005-05-29 發送簡訊給我 |
|
kevin2004
資深會員 ![]() ![]() ![]() ![]() ![]() 發表:18 回覆:463 積分:416 註冊:2005-05-29 發送簡訊給我 |
|
kevin2004
資深會員 ![]() ![]() ![]() ![]() ![]() 發表:18 回覆:463 積分:416 註冊:2005-05-29 發送簡訊給我 |
只做到跳出 Outlook Express 畫面, 還是要靠手動寄信。
如果要寄 1000 或 10000 封, 不可能手動按一萬次 ==>因為客戶那的EMailServer的設定會擋我的Indy丟過去的信,我有時也懶的跑客戶 ==> 那去代改其Server設定。再加上防火牆等攔阻通常不攔OutLook,我通常在批 ==> 次發信時會另附一段丟給OutLook批次發信的程式碼。你試試看。 ConnectToOutLook ; // ============================================================ // 啟動OutLook寫信功能 // ============================================================ if ol_OutLookIsConnected then begin ol_ThisEMailItem.Recipients.add ( ReceiverEMailEdit.Text ) ; ol_ThisEMailItem.Attachments.Add ( ExtractFilePath(Application.ExeName) ATTACH_HTML_FILE_NAME ) ; //ol_ThisEMailItem.From := FromEMailEdit.Text ; // ol_ThisEMailItem.To := ToNameEdit.Text ; ol_ThisEMailItem.To := ToNameEdit.Text '<' ReceiverEMailEdit.Text '>' ; ol_ThisEMailItem.Subject := SubjectEdit.Text ; ol_ThisEMailItem.Body := GetEMailBody(EMailAdoTable.FieldByName('ID_Name').AsString ) ; ol_ThisEMailItem.CC := ccEdit.Text ; ol_ThisEMailItem.BCC := bccEdit.Text ; if SendYes then ol_ThisEMailItem.Send else ol_ThisEMailItem.Display ; end else File_Msg('未聯上OutLook,命令取消。' ) ; ==>貼後補記:抱歉,是小弟未仔細看題,大哥你的OutLook原碼中已有下Send命令, ==> 應已可將信送出。即您的問題不是如何驅動OutLook作發信動作,而是OutLook ==> express或ShellExecute無法同時啟動發信作業。後者的功能設計應該就是如此, ==> 而且也應該是合理與安全的設計。前者,我就不知了,因為現在要找一台沒裝 ==> OutLook的機械還真很困難。看看這幾天抽個空重裝台空的電腦來試試看這個 ==> 自動發信的功能可否在OutLook Express上使用。
------
Kevin |
Kingron
中階會員 ![]() ![]() ![]() 發表:1 回覆:51 積分:60 註冊:2005-09-14 發送簡訊給我 |
请参考下面的代码:
procedure SendMail(Subject, Body, RecvAddress: string; Attachs: TStrings); overload; { 使用MSMAPI发送电子邮件,支持附件! Need M$ MS MAPI COM & License } var MM, MS: Variant; i: integer; begin CoInitialize(nil); MM := CreateOleObject('MSMAPI.MAPIMessages'); MS := CreateOleObject('MSMAPI.MAPISession'); MS.DownLoadMail := False; MS.NewSession := False; MS.LogonUI := True; MS.SignOn; MM.SessionID := MS.SessionID; MM.Compose; MM.RecipIndex := 0; MM.RecipAddress := RecvAddress; MM.MsgSubject := Subject; MM.MsgNoteText := Body; for i := 0 to Attachs.Count - 1 do begin MM.AttachmentIndex := i; MM.AttachmentPathName := Attachs[i]; end; MM.Send(False); MS.SignOff; VarClear(MS); VarClear(MM); CoUninitialize; end; procedure TForm2.btn1Click(Sender: TObject); var attachs: TStringList; begin attachs := TStringList.Create; SendMail('Subject', 'body', 'Kingron@163.com', attachs); attachs.Free; end;
------
超级猛料:http://kingron.delphibbs.com
編輯記錄
Kingron 重新編輯於 2007-07-18 17:42:48, 註解 無‧
|
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |