ProcessWindowStyle.Hidden schlägt fehl?

  • VB.NET

Es gibt 2 Antworten in diesem Thema. Der letzte Beitrag () ist von Gonger96.

    ProcessWindowStyle.Hidden schlägt fehl?

    Hallo,

    ich würde gerne eine externe Anwendung im Hintergrund öffnen.

    Code:

    VB.NET-Quellcode

    1. Dim PSI As ProcessStartInfo = New ProcessStartInfo()
    2. PSI.FileName = Path.Combine(BasePat, "X.Exe")
    3. Dim Paramss As String = ParC
    4. PSI.Arguments = Paramss
    5. PSI.RedirectStandardOutput = True
    6. PSI.UseShellExecute = False
    7. PSI.WindowStyle = ProcessWindowStyle.Hidden
    8. Dim Pro As Process = Process.Start(PSI)


    Dennoch wird die Anwendung normal geöffnet, man sieht das Programm ganz normal.

    Wie bekommt man das hin?
    Dies funktioniert (==> TaskManager):

    VB.NET-Quellcode

    1. Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
    2. Dim PSI As ProcessStartInfo = New ProcessStartInfo()
    3. PSI.FileName = "Notepad.Exe"
    4. PSI.WindowStyle = ProcessWindowStyle.Hidden
    5. Dim Pro As Process = Process.Start(PSI)
    6. End Sub
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Anwendungen kann man ein Befehl fürs Show übergeben. Das heißt jedoch nicht das die Anwendungen den auch nutzen. Du müsstest ebn warten bis das GUI aufpopt und dann kannst du es verstecken ggf per ShowWindow, Handle ist ja im Process Object mit drin.

    So wies Rod zeigt solltes aber eigentlich laufen. Bei dir liegts am UseShellExecute bzw RedirectOutput

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Gonger96“ ()