Vista - ShellExecute / windowless



  • Ich habe mit einiger Irritation entdeckt, dass der CreateProcess, der einen fensterlosen Prozess startet, in Windows VISTA nicht funktioniert.

    Lässt sich das gleiche Vorhaben auch mit ShellExecute realisieren?
    Das heißt: Gibt es ein Flag, das ein Fenster unisichtbar startet?



  • Warum geht es nicht? Kommt etwa "ERROR_ELEVATION_REQUIRED" (740) zurück?

    Es gibt zwei Lösungen:
    - Es gibt einen Shim für dieses Problem (Application compatibility fix)
    - Du verwendest ShellExecute



  • Was ist ein Application compatibility fix?

    Ich habe im Internet einige Hinweise gelesen, dass VISTA CreateProcess nicht ausführt

    Um das zu umgehen, habe ich ShellExecute mit dem Flag SW_HIDE verwendet, aber das verursacht Probleme.

    Das Vordergrundgfenster ist eine DirectX-Applikation, die ihrerseits ein unsichtbares Konsolenprogramm öffnen soll, aber nicht den Fokus verlieren soll.

    Bislang hat dies mit der nachfolgenden Funktion wunderbar geklappt, in Xp, nicht aber in Vista. Was wäre die Entsprechung dieser Funktion in ShellExecute?

    bool bWorked = ::CreateProcess( "VOIP.exe",
                 NULL,      
                 NULL,
                 NULL,
                 FALSE,
                 NORMAL_PRIORITY_CLASS | CREATE_NO_WINDOW,
                 NULL,
                 NULL,
                 &suInfo,
                 &procInfo);
    


  • WAS geht denn nicht? Fehlermeldung/-nummer!



  • Percy2000 schrieb:

    Ich habe im Internet einige Hinweise gelesen, dass VISTA CreateProcess nicht ausführt

    Womit Vista gar nicht mehr funktionstüchtig sein sollte. 🙄



  • Siehe mein Problem...
    Vista kann "CreateProcess" und er läuft, aber er kann nicht interaktiv sein, also keine Fenster anzeigen oder dich zu einer Eingabe auffordern -was auf ein Fenster zurückzuführen ist-...

    Quasi öffnet er ein Fenster, aber Vista zeigt dieses nicht an...

    ^^ Ich gehe davon aus -aufgrund der Fehlerbeschreibung- dass du einen Service machst!?


Anmelden zum Antworten