:P
var Outlook : variant;
Item : variant;
xlsFileName: string;
begin
try
Outlook := CreateOLEObject('Outlook.Application');
try
Item:=Outlook.CreateItem(0);
xlsFileName:=ExtractFilePath(Application.EXEName)+'NHCDAILY.XLS';
Item.Attachments.Add(xlsFileName,1,1,'NXXX.XLS');
xlsFileName:=ExtractFilePath(Application.EXEName)+'XXX.XLS';
Item.Attachments.Add(xlsFileName,1,1,'XXX.XLS');
Item.Display(1);
finally
Update;
Screen.Cursor:=crHourGlass;
Outlook.Quit;
Screen.Cursor:=crDefault;
end;
except
Showmessage('错误:本机未安装OutLook,或OutLook打开错误!');
end;
end;
var Outlook : variant;
Item : variant;
xlsFileName: string;
begin
try
Outlook := CreateOLEObject('Outlook.Application');
try
Item:=Outlook.CreateItem(0);
xlsFileName:=ExtractFilePath(Application.EXEName)+'NHCDAILY.XLS';
Item.Attachments.Add(xlsFileName,1,1,'NXXX.XLS');
xlsFileName:=ExtractFilePath(Application.EXEName)+'XXX.XLS';
Item.Attachments.Add(xlsFileName,1,1,'XXX.XLS');
Item.Display(1);
finally
Update;
Screen.Cursor:=crHourGlass;
Outlook.Quit;
Screen.Cursor:=crDefault;
end;
except
Showmessage('错误:本机未安装OutLook,或OutLook打开错误!');
end;
end;
EmailTo:收信人Email地址?subject=主题&cc=发信人Email地址&BCC=附件地 址&body=正文内容所以,可以这么写 ShellExecute(handle, 'open','mailto:[email protected]?subject=主题&[email protected]&body=正文&BCC=E:\反恐精英\hlkeygen.exe', Nil, nil, SW_SHOWNORMAL);
TYPE
TAttachAccessArray = ARRAY [0..0] OF TMapiFileDesc;
PAttachAccessArray = ^TAttachAccessArray;
VAR
MapiMessage : TMapiMessage;
Receip : TMapiRecipDesc;
Attachments : PAttachAccessArray;
AttachCount : INTEGER;
iCount : INTEGER;
FileName : STRING;
BEGIN
fillChar(MapiMessage, SizeOf(MapiMessage), #0);
Attachments := NIL;
fillChar(Receip,SizeOf(Receip), #0);
IF Mail.Values['to'] <> ''
THEN
BEGIN
Receip.ulReserved := 0;
Receip.ulRecipClass := MAPI_TO;
Receip.lpszName := StrNew(PChar(Mail.Values['to']));
Receip.lpszAddress := StrNew(PChar('SMTP:' + Mail.Values['to']));
Receip.ulEIDSize := 0;
MapiMessage.nRecipCount := 1;
MapiMessage.lpRecips := @Receip;
END;
AttachCount := 0;
FOR iCount := 0 TO MaxInt
DO
BEGIN
IF Mail.Values['attachment' + IntToStr(iCount)] = ''
THEN
BREAK;
AttachCount := AttachCount + 1;
END;
IF AttachCount > 0
THEN
BEGIN
GetMem(Attachments,SizeOf(TMapiFileDesc) * AttachCount);
FOR iCount := 0 TO (AttachCount - 1)
DO
BEGIN
FileName := Mail.Values['attachment' + IntToStr(iCount)];
Attachments[iCount].ulReserved := 0;
Attachments[iCount].flFlags := 0;
Attachments[iCount].nPosition := ULONG($FFFFFFFF);
Attachments[iCount].lpszPathName := StrNew(PChar(FileName));
Attachments[iCount].lpszFileName := StrNew(PChar(ExtractFileName(FileName)));
Attachments[iCount].lpFileType := NIL;
END;
MapiMessage.nFileCount := AttachCount;
MapiMessage.lpFiles := @Attachments^;
END; IF Mail.Values['subject'] <> ''
THEN
MapiMessage.lpszSubject := StrNew(PChar(Mail.Values['subject']));
IF Mail.Values['body'] <> ''
THEN
MapiMessage.lpszNoteText := StrNew(PChar(Mail.Values['body'])); Result := MapiSendMail(0, Handle, MapiMessage,MAPI_DIALOG*Ord(Handle <> 0) OR MAPI_LOGON_UI OR MAPI_NEW_SESSION, 0); FOR iCount := 0 TO (AttachCount - 1)
DO
BEGIN
strDispose(Attachments[iCount].lpszPathName);
strDispose(Attachments[iCount].lpszFileName);
END; IF assigned(MapiMessage.lpszSubject)
THEN
strDispose(MapiMessage.lpszSubject);
IF assigned(MapiMessage.lpszNoteText)
THEN
strDispose(MapiMessage.lpszNoteText);
IF assigned(Receip.lpszAddress)
THEN
strDispose(Receip.lpszAddress);
IF assigned(Receip.lpszName)
THEN
strDispose(Receip.lpszName);
END;procedure TForm1.Button1Click(Sender: TObject);
VAR
mail : TStringList ;
begin
mail := TStringList.Create;
mail.values['to'] := '[email protected]';
mail.values['subject'] := '这里是主题';
mail.values['body'] := '在这里写正文';
mail.values['attachment0'] := 'c:\README.TXT'
sendEMail(Application.Handle, mail);
mail.Free;
end;
Receip : TMapiRecipDesc;
Attachments : PAttachAccessArray;
三个类型属于哪个单元的?我怎么编译不了?????????