MrChefman Geschrieben 9. Mai 2006 Geschrieben 9. Mai 2006 Hallo zusammen! Habe folgenden Code, mit dem ich einen externen Prozess starte. Das ganze soll auf einem Zielsystem mit WinCE4.2 geschehen. Wird das nun ausgeführt klappt auch alles. Soweit ok. Nur popt dabei die Win-Command-Shell auf (wohl durch den ersten Parameter von createProcess). Dies ist etwas unschön. Kennt jemand eine Lösung dafür, wie die Shell (bei WinCE) im Hintergrund bleibt und nur das aufgerufene Programm sich öffnet? Schonmal danke! Und hier ist der CODE (naja, der relevanet Ausschnitt): PROCESS_INFORMATION pi1 = {0}; #ifdef WIN32 STARTUPINFO StartupInfo; ZeroMemory(&StartupInfo, sizeof (STARTUPINFO)); StartupInfo.cb = sizeof (STARTUPINFO); StartupInfo.wShowWindow = SW_HIDE; StartupInfo.dwFlags = STARTF_USESHOWWINDOW; ZeroMemory(&pi1, sizeof (PROCESS_INFORMATION)); #endif TCHAR *pcExecName1 = TEXT("\\windows\\abcd.exe"); TCHAR *pcExecName2 = TEXT("\\windows\\efgh.exe"); TCHAR cExecBuf1[50] = {0}; TCHAR cExecBuf2[70] = {0}; cExecBuf1[0] = _T('\0'); cExecBuf2[0] = _T('\0'); _stprintf( cExecBuf1, TEXT(" /C %s"), pcExecName1 ); _stprintf( cExecBuf2, TEXT(" /C %s"), pcExecName2 ); if ( cExecBuf1[0] != 0 ) { if ( !CreateProcess( TEXT("CMD.EXE"),cExecBuf1,NULL,NULL,FALSE, #ifdef WIN32 NORMAL_PRIORITY_CLASS, #else 0, #endif NULL, NULL,#ifdef WIN32 &StartupInfo,#else NULL, #endif &pi1 ) )
Klotzkopp Geschrieben 9. Mai 2006 Geschrieben 9. Mai 2006 Warum startest du das Programm denn über cmd.exe und nicht direkt?
MrChefman Geschrieben 9. Mai 2006 Autor Geschrieben 9. Mai 2006 Soll das folgendes heißen: if ( !CreateProcess( TEXT("ABCD.EXE"),cExecBuf1,NULL,NULL,FALSE, #ifdef WIN32 NORMAL_PRIORITY_CLASS, #else 0, #endif NULL, NULL,#ifdef WIN32 &StartupInfo,#else NULL, #endif &pi1 ) ) Aber was mache ich dann mit dem cExecBuf1, wo mein eigentlicher Programmaufruf drinsteht? Oder soll ich statt TEXT("CMD.EXE") einfach NULL eintragen?
Klotzkopp Geschrieben 9. Mai 2006 Geschrieben 9. Mai 2006 Wie man CreateProcess benutzt, steht in der MSDN Library: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wcecoreos5/html/wce50lrfCreateProcess.asp
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden