Python-Skript über GUI aufrufen



  • Hallo,

    ich habe mehrere Python-Skripte, die ich über VC++ ansprechen will. Die Skripte können problemlos aus der Kommandozeile ausgeführt werden, z.B.

    > "C:\test.py para1 para2"
    In VC++ will ich nun vom Benutzer diesen Aufruf aus der Kommandozeile "nachbilden". Versucht habe ich es mit WinExec und mit CreateProcess, beides hat aber nicht funktioniert. Von der Syntax her war alles korrekt, da ich es an folgendem Bsp getestet hatte:

    [code]
    PROCESS_INFORMATION pi = {0};
    STARTUPINFO si = {sizeof(si)};
    si.wShowWindow = SW_NORMAL;
    
    ::CreateProcess( _T("D:\\Windows\\system32\\sol.exe"), _T(""), NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi);
    [/code]
    

    Der Aufruf:

    ::CreateProcess( _T("C:\\test.py para1 para2"), _T(""), NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi);
    

    bringt jedoch kein Ergebnis. Kann mir jemand helfen?

    Danke und viele Grüße,
    Marc



  • Schau Dir mal ShellExecute an, das sollte dir weiterhelfen.

    Gruß Matthias



  • ShellExecute(NULL, _T("open"), _T("C:\\test.py para1 para2"), NULL, NULL, SW_SHOW);
    

    bzw.

    ShellExecute(NULL, "open", "C:\\test.py para1 para2", NULL, "C:\\", SW_SHOWDEFAULT);
    

    bringt leider auch nichts 😞



  • Pyton ist dich eine Interpretersprache, vielleicht solltest Du mal den Iterpreteraufruf mit in deine Commandline aufnehmen.
    Aber wie gesagt ich hab von Pyton keine Ahnung.

    Gruß Matthias



  • Danke...

    über z.B.

    WinExec("cmd.exe /c C:\\test.py para1 para2",SW_SHOW);
    

    hat es funktioniert 🙂

    Gruß Marc


Log in to reply