a „oeæ ã@sJdZddlmZmZd dd„ZedkrFdZdZd Zd Z ee eeed �dS) zImodule to send mail with Extended MAPI using the pywin32 mapi wrappers...é)ÚmapiÚmapitagsÚNcs´t d¡t d|dtjtjB¡}| d¡}| tjtj tj fd¡|  dd¡}t |ƒdkr^qx|d} tj df| vrDqxqD| \\} } \} } \}}|  d| dtjtjB¡}| tjd¡\}}|d\}} t |¡tjkràtd| ƒ‚| | dtj¡}| dd¡}g}dd„‰|�r,| ‡fdd „| d ¡Dƒ¡|�rP| ‡fd d „| d ¡Dƒ¡|�rt| ‡fd d „| d ¡Dƒ¡| tj|¡| tj|ftj|fg¡| d¡| d¡dS) zËSends an email to the recipient using the extended MAPI interface Subject and Message are strings Send{To,CC,BCC} are comma-separated address lists MAPIProfile is the name of the MAPI profileNréTz%got PT_ERROR instead of PT_BINARY: %scSs<tj|ftjdftjdftjdftj|ftjdftj|ffS)NFréZSMTP)rZPR_RECIPIENT_TYPEZPR_SEND_RICH_INFOZPR_DISPLAY_TYPEZPR_OBJECT_TYPEZPR_EMAIL_ADDRESS_AZ PR_ADDRTYPE_AÚPR_DISPLAY_NAME_A)Ú recipientZ recipienttype©r ú@C:\Program Files\Certbot\pkgs\win32comext\mapi\demos\mapisend.pyÚ makeentry;sùz SendEMAPIMail..makeentrycsg|]}ˆ|tjƒ‘qSr )rZMAPI_TO©Ú.0r©r r r Ú Hóz!SendEMAPIMail..ú,csg|]}ˆ|tjƒ‘qSr )rZMAPI_CCr rr r rLrcsg|]}ˆ|tjƒ‘qSr )rZMAPI_BCCr rr r rPr) rZMAPIInitializeZ MAPILogonExZ MAPI_EXTENDEDZMAPI_USE_DEFAULTZGetMsgStoresTableZ SetColumnsrZ PR_ENTRYIDrZPR_DEFAULT_STOREZ QueryRowsÚlenZ OpenMsgStoreZ MDB_NO_DIALOGZMAPI_BEST_ACCESSZGetPropsZPR_IPM_OUTBOX_ENTRYIDZ PROP_TYPEZPT_ERRORÚ TypeErrorZ OpenEntryZ CreateMessageÚextendÚsplitZModifyRecipientsZ MODRECIP_ADDZSetPropsZ PR_BODY_AZ PR_SUBJECT_AZ SaveChangesZ SubmitMessage)ZSubjectZMessageÚSendToZSendCCZSendBCCÚ MAPIProfileZsessionZmessagestorestableZrowsÚrowZeid_tagZeidZname_tagÚnameZ def_store_tagZ def_storeZmsgstoreÚhrZpropsÚtagZ outboxfolderÚmessageZpalr rr Ú SendEMAPIMail sT ÿ ÿ  ÿ    ÿÿÿ rÚ__main__zan.invalid at addressztesting one two threezTesting Extended MAPI!!)r)rrNNNN) Ú__doc__Z win32com.mapirrrÚ__name__rrZ SendMessageZ SendSubjectr r r r Úsÿ P