Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2005.03.13;
Скачать: [xml.tar.bz2];

Вниз

Отправить письмо незаметно от пользователя   Найти похожие ветки 

 
Руслана   (2005-02-25 00:19) [0]

В здешней FAQ есть такой вот пример:
Вообщем ситуация: нужно отправить созданное моей программой письмо по е-майлу независимо от юзера т.е. чтобы он не подозревал об отправке. Вот бы это на АПИ с примером!
unit Email;
interface
uses Windows, SusUtils, Classes;

function SendEmail(const RecipName, RecipAddress, Subject, Attachment: string): Boolean;

function IsOnline: Boolean;
implementation
uses Mapi;

function SendEmail(const RecipName, RecipAddress, Subject, Attachment: string): Boolean;
var
 MapiMessage: TMapiMessage;
 MapiFileDesc: TMapiFileDesc;
 MapiRecipDesc: TMapiRecipDesc;
 i: integer;
 s: string;
begin
 with MapiRecipDesc do begin
     ulRecerved:= 0;
     ulRecipClass:= MAPI_TO;
     lpszName:= PChar(RecipName);
     lpszAddress:= PChar(RecipAddress);
     ulEIDSize:= 0;
     lpEntryID:= nil;
 end;

 with MapiFileDesc do begin
     ulReserved:= 0;
     flFlags:= 0;
     nPosition:= 0;
     lpszPathName:= PChar(Attachment);
     lpszFileName:= nil;
     lpFileType:= nil;
 end;

 with MapiMessage do begin
     ulReserved := 0;
     lpszSubject := nil;
     lpszNoteText := PChar(Subject);
     lpszMessageType := nil;
     lpszDateReceived := nil;
     lpszConversationID := nil;
     flFlags := 0;
     lpOriginator := nil;
     nRecipCount := 1;
     lpRecips := @MapiRecipDesc;
     if length(Attachment) > 0 then begin
         nFileCount:= 1;
         lpFiles := @MapiFileDesc;
     end else begin
         nFileCount:= 0;
         lpFiles:= nil;
     end;
   end;

 Result:= MapiSendMail(0, 0, MapiMessage, MAPI_DIALOG
or MAPI_LOGON_UI or MAPI_NEW_SESSION, 0) = SUCCESS_SUCCESS;
end;

function IsOnline: Boolean;
var
 RASConn: TRASConn;
 dwSize,dwCount: DWORD;
begin
 RASConns.dwSize:= SizeOf(TRASConn);
 dwSize:= SizeOf(RASConns);
 Res:=RASEnumConnectionsA(@RASConns, @dwSize, @dwCount);
 Result:= (Res = 0) and (dwCount > 0);
end;

end.

При попытке скомпилировать как есть вылазят ошибки. В частности в функции IsOnline. Но это неважно, в принципе.

Объясните дуре как вызвать правильно SendEmail ??? Не могу понять.
Второе - а что никакие SMTP не нужны?

В идеале надо незаметно отправить файл.


 
Palladin ©   (2005-02-25 00:26) [1]


> Отправить письмо незаметно от пользователя

Не стоит...



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2005.03.13;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.04 c
1-1109269017
Gear
2005-02-24 21:16
2005.03.13
Приоритеты процессов


1-1109622949
Марат
2005-02-28 23:35
2005.03.13
Локализация встроенных констант в XP


6-1104780890
ASP2
2005-01-03 22:34
2005.03.13
HTTP-запрос методом GET


1-1109676753
dmitry81_2
2005-03-01 14:32
2005.03.13
Cannot create application object in shared object or library


1-1109237398
Vizitor
2005-02-24 12:29
2005.03.13
Переключение раскладки клавиатуры





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский