Запуск *.exe из *.exe

Тема в разделе "MS Visual C++", создана пользователем -, 11 июл 2005.

Статус темы:
Закрыта.
  1. Гость

    Пишу Win-32 приложение на С++ в компиляторе VS 7.0 (NET)
    Моя программа main.exe должна в определённый момент запустить чужую child.exe При этом старые функции для этой цели spawnl_ или delay VS 7.0 не принимает. В Сreate process параметров столько, что даже пример из MSDN не работает... Подскажите функцию!!!
     
  2. Guest

    Guest Гость

    Осваивай CreateProcess, ничего сложного там нет - большинство параметров с радостью берут NULL.

    BOOL WinRun(LPCTSTR sFile, LPCTSTR sLine, LPCTSTR sDir, UINT SW_x, BOOL bWait)
    {
    STARTUPINFO si;
    ZeroMemory(&si, sizeof(si));
    si.cb = sizeof(si);
    si.wShowWindow=(WORD)SW_x;
    si.dwFlags=STARTF_USESHOWWINDOW;
    PROCESS_INFORMATION pi;
    CString sPath=sFile;
    sPath+=_T(" ");
    sPath+=sLine;

    BOOL bRet=CreateProcess(NULL, (LPTSTR)(LPCTSTR)sPath, NULL,
    NULL, FALSE, 0, NULL, sDir, &si, &pi);
    if (bWait)
    WaitForSingleObject(pi.hProcess, INFINITE);
    CloseHandle(pi.hThread);
    CloseHandle(pi.hProcess);
    return bRet;
    }
     
  3. mike.dld

    mike.dld Гость

    WinExec, ShellExecute, CreateProcess
     
  4. b00z3

    b00z3 Гость

    system("ПУТЬ\.exe"); :)
     
  5. FeaNor

    FeaNor Гость

    Добрый день! Вопросик почти на эту же тему, нужно запустить .exe, но ситуация следующая: есть некая папка Folder, внутри которой 2 папки Fold1 и Fold2 плюс тут же лежит setup.exe, который при запуске выполняет установку из Fold1, потом из Fold2. все это добро лежит на CD и при косвенном запуске этого setup.exe(т.е. из другого .exe) где-то происходит запутка с относительными путями и после установки из папки Fold1 уже не может найти другую, но будучи запущен непосредственно все делает правильно. Все это было сначала реализовано через .bat файлы и там решалось через такую конструкцию

    cd ..
    cd Folder
    setup.exe

    Сейчас использую ShellExecute, подскажите плз как тут это сделать? СПАСИБО
     
  6. FeaNor

    FeaNor Гость

    Всем спасибо, сам догадался, через SetCurrentDirectory() :)
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей