Einzelnen Beitrag anzeigen

Benutzerbild von Catbytes
Catbytes

Registriert seit: 7. Sep 2002
Ort: Heckendalheim
353 Beiträge
 
Delphi XE5 Enterprise
 
#1

Drucken per Shellexecute

  Alt 21. Feb 2007, 14:59
Hallo,

ich habe mir für mein Outlook 2000 ein kleines Makro geschrieben, mit dem ich Anhänge ausdrucken kann. Es geht hauptsächlich um PDF-Anhänge, weil wir viele Bestellungen per PDF bekommen.

Der Code funktioniert soweit auch ganz gut, nur bleibt am Ende immer der leere Acrobat Reader in der Taskleiste zurück. Weiß jemand, wie ich das beheben kann?

Code:
Private Declare Function ShellExecute Lib "shell32.dll" Alias _
   "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, _
   ByVal lpFile As String, ByVal lpParameters As String, _
   ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

Sub PDFDrucken()
Dim MyAnhang As Attachment
Dim MyMail As MailItem
Dim file_name, tmp_dir As String
Set Selection = Outlook.ActiveExplorer.Selection

tmp_dir = "c:\winnt\temp"

For Each MyMail In Selection
    If MyMail.Attachments.Count > 0 Then
        Set MyAnhang = MyMail.Attachments(1)
        file_name = tmp_dir & "\" & MyAnhang.FileName
        MyAnhang.SaveAsFile (file_name)
        ShellExecute 0, "print", file_name, vbNullString, vbNullString, 0
    End If
Next
End Sub
Catbytes
  Mit Zitat antworten Zitat