CreateProcess mit TLabel
-
Hallo,
in zwei TLabels steht der String einer Datei (z.B. "test.exe") und der String der Startparamter für diese Anwendung.
Bevor ich mit Unicode gearbeitet habe (c++Builder 6) hat mein CreateProcess-Code funktioniert:TStartupInfo stgStartupInfo; TProcessInformation stgProcessInfo; DWORD ExitCode; // für den ExitCode setmem(&stgStartupInfo,sizeof(TStartupInfo),0); stgStartupInfo.cb = sizeof(TStartupInfo); // Anwendung starten: if(CreateProcess(NULL,(Form1->Anwendung_starten_befehl->Caption+" "+ Form1->Anwendung_starten_parameter->Caption).c_str(), NULL,NULL,false, CREATE_DEFAULT_ERROR_MODE | NORMAL_PRIORITY_CLASS, NULL,NULL, &stgStartupInfo,&stgProcessInfo)==TRUE) {
Was müsste ich nun ändern, damit dies auch unter c++Builder 2010 funktioniert? (CreateProcess ruft ja nun automatisch CreateProcessW auf).
Danke!
-
CreateProcessW will einen WideString
da String im C++ Builder >2009 ein UnicodeString ist übergeben es mit .w_str() statt mit c_str()