# ShellExecute "print"



## BraveNewWorld (15. März 2004)

Hallo VB Gemeinde.
Ich habe ein Problem mit dem ich einfach nicht mehr weiterkomme.
Habe dies bezüglich in Internet auch nichts weiteres gefunden.
Ich habe also eine ShellExecute Anweisung geschrieben. Also aus einem Programm rufe ich mittels eines Button-Click Event rufe ich die ShellExecute auf.
Funktioniert prima. Drucken tut es auch. 
Nun das problem.
Wenn ich bei geöffneter Shell auf die darunterliegende Form klicke verabschiedet sich die Shell in den Hintergrund. Wie kann ich diese verhindern. Also die Shell soll so solange im Vordergrund bleiben bis ich entweder Cancel drücke oder die Shell schließe.
Hier mein vorhandener 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
  Private Declare Function GetDesktopWindow Lib "user32" () _
  As Long

Private Sub Command1_Click()
Dim sDirectory As String
  Dim lRet As Long


  lRet = ShellExecute(Me.hWnd, "print", "C:\Test\Test.ppt",  vbNullString, NullString, vbNormalFocus)

End Sub

Besten Dank und Grüße


----------



## thekorn (15. März 2004)

vielleicht hilft dir dieser link weiter:

http://www.vbarchiv.net/archiv/tipp_details.php?pid=169 

gruß
thekorn


----------

