Функция WinExec

Вызов функции WinExec наиболее простой способ порождения нового процесса. Хотя эта функция реализована только для совместимости с Win16-приложениями, приложения Win32 должны реализовывать данную возможность через CreateProcess. Фактически WinExec является оберткой для CreateProcess - внутри WinExec происходит вызов CreateProcess с параметрами по умолчанию.

UINT WinExec(

LPCSTR lpCmdLine,

UINT uCmdShow

);

Параметр lpCmdLine – ссылка на заканчивающуюся нулевым значением строку, содержащую командную строку для запуска приложения.

Параметр uCmdShow задает способ отображения окна программы (SW_HIDE, SW_MAXIMIZE, SW_MINIMIZE, SW_SHOWNORMAL и т.д.).

Результатом функции WinExec является целое число. Если код возврата больше 31, то функция выполнена успешно, иначе в процессе выполнения функции произошла ошибка и возвращенное функцией значение следует сравнить со специальными константами для выяснения причины неудачи.

#include "stdafx.h"

#include "windows.h"

using namespace std;

int _tmain(int argc, _TCHAR* argv[])

{

switch (WinExec("c:\\windows\\notepad.exe",SW_SHOW))

{

case 0:

cout << "ERROR: The system is out of memory or resources.";

break;

case ERROR_BAD_FORMAT:

cout << "ERROR: The.exe file is invalid.";

break;

case ERROR_PATH_NOT_FOUND:

cout << "ERROR: The specified path was not found.";

break;

case ERROR_FILE_NOT_FOUND:

cout << "ERROR: The specified file was not found.";

break;

}

cin;

}


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: