2016-05-12 17 views
-1

Ich mache im Moment eine benutzerdefinierte Benutzeroberfläche, also versuche ich, ein Spiel aus meiner C++ - Anwendung mit CreateProcess zu starten. Hier ist mein Code so weitMit CreateProcess ein ausführbares Spiel ausführen

PROCESS_INFORMATION Processinfo; 
STARTUPINFO StartupInfo; 
ZeroMemory(&StartupInfo, sizeof(StartupInfo)); 
StartupInfo.cb = sizeof(StartupInfo); 
ZeroMemory(&Processinfo, sizeof(Processinfo)); 
if (CreateProcess(TEXT("C:\\Program Files(x86)\\Steam\\steamapps\\common\\Surgeon Simulator VR Meet The Medic\\Win32\\SurgeonVR.exe"), 
    GetCommandLineA(), 
    NULL, 
    NULL, 
    false, 
    CREATE_SUSPENDED, 
    NULL, 
    NULL, 
    &StartupInfo, 
    &Processinfo)) 
{ 
    system("pause"); 
} 

Im nicht ganz sicher, wohin ich gehe falsch, wie ich nie zuvor verwendet Create habe, aber nach einem Blick durch eine Tonne Beispiele, die ich versuchte, zu imitieren, was alle anderen tat zu kein Erfolg.Der Prozess wird nicht erstellt, und das Spiel wird nicht gestartet. Jede Hilfe wird sehr geschätzt!

+0

Und was ist das Problem? – arrowd

+0

Der Prozess wird nicht erstellt und das Spiel wird nicht gestartet. Entschuldigung sollte in der Post erwähnt werden! –

+0

Natürlich läuft es nicht - es wurde suspendiert, indem man das Flag "CREATE_SUSPENDED" übergibt. –

Antwort

0

Behebung des Problems mit char * path = "C: \ Programme (x86) \ Steam \ steamapps \ common \ Chirurgischer Simulator VR Meet the Medic \ Win32 \ SurgeonVR.exe"; und dann Pfad stattdessen als Parameter verwenden. Ich denke, das Problem war ein Fehler in der Pfadvariablen sowie die Verwendung von CREATE_SUSPENDED als Parameter.