Le forum (ô combien francophone) des utilisateurs de Powerbuilder.
Bonjour,
J'ai une application qui rappatrie le contenu d'un email dans un objet OLE.
Je voudrais imprimer cet email. Hors, lorsque j'effectue le code ci-dessous, il me sort une page blanche
Long ll_print_jobnumber Integer li_print ll_print_jobnumber = PrintOpen() li_print = ole_html_view.Print( ll_print_jobnumber,ole_html_view.X, ole_html_view.Y) PrintClose(ll_print_jobnumber)
N'étant vraiment pas familier avec la manipulation d'objets OLE, je viens à vous pour vous demander de l'aide ... Comment imprimer cet email ?
Dernière modification par BRWA (08-09-2009 12:55:26)
Hors ligne
Est-ce que Print est implémenté dans ton objet ? Le mieux est de regarder dans la doc de l'objet.
Quel est cet objet d'ailleurs ?
Hors ligne
Visiblement, ce serait easymail ...
Hors ligne
OK, je ne suis vraiment pas habitué à manipuler des objets OLE ... En fait, c'est la première fois.
Je pensais à tord que c'était complètement intégré dans PB ...
Le fait que tu me dises de regarder dans la doc de l'objet ... m'a donné la solution ... en fait c'est vraiment pas compliqué !
integer li_status , status, li_return long ll_hMsg OleObject Ole_mail_message, PrintObj as_filename = Message.StringParm //Create both objects Ole_mail_message=Create OLEObject li_status = Ole_mail_message.ConnectToNewObject("EasyMail.message") PrintObj=Create OLEObject if li_status <> 0 then messageBox("ERREUR","Impossible de charger le message") else li_status = PrintObj.ConnectToNewObject("EasyMail.MessagePrinter") if li_status = 0 then Ole_mail_message.licenseKey = gs_licenceMail // Get the message status = Ole_mail_message.LoadMessage(as_filename, 0, 2, 0) IF status = 0 THEN //Print the message ll_hMsg = Ole_mail_message.CreateMessageHandle() li_return = PrintObj.PrintMessage(ll_hMsg,511) ELSE messageBox("ERREUR","Impossible de charger le message") END IF Destroy(PrintObj) end if Destroy(ole_mail_message) end if Return li_return
Dernière modification par BRWA (08-09-2009 12:56:25)
Hors ligne