Kommandozeile mit CreateProcess übergeben



  • Hallo,

    habe ein Problem mit dem starten von 7-Zip Version 3.13. Ich möchte mit Hilfe der Kommandozeilenübergabe ein komplettes Verzeichnis (mit Unterverzeichnissen) komprimieren. Habe dazu mit dem C++ Builder 4 ein kleines Programm geschrieben.

    Hier kommt der Code-Ausschnitt:

    AnsiString newZip;

    memset(&si, 0, sizeof(STARTUPINFO));
    si.cb = sizeof(STARTUPINFO);
    si.dwFlags = STARTF_USESHOWWINDOW |STARTF_USESTDHANDLES;
    si.wShowWindow = SW_SHOWNORMAL;

    newZip:"C:\\Programme\\7-Zip\\7zip.exe";

    if(!CreateProcess(newZip.c_str(),
    "C:\> 7z.exe a -rtzip 7ziptest.zip TestDir\*",
    NULL,
    NULL,
    FALSE,
    CREATE_NEW_CONSOLE | NORMAL_PRIORITY_CLASS,
    NULL,
    "c:\", // Arbeitsverzeichnis
    &si,
    &pi))
    {
    MessageBox (GetActiveWindow(),"Hat nicht geklappt", NULL, MB_ICONEXCLAMATION);
    }

    Ich wäre unwahrscheinlich dankbar wenn mir jemand bei diesem Problem weiterhelfen könnte. Suche schon seit einer Woche an der Lösung herum, steh aber irendwie auf dem Schlauch.



  • Öhm.. und was passiert? (nix, BOOOM, MessageBox, Exception, Linker Fehler)


Anmelden zum Antworten