게임을 시작하기 위해 ShellExecute와 CreateProcess를 모두 시도했습니다. 제 목표는 게임 창을 숨기는 것입니다. 이 게임은 DirectX9를 사용하여 제작되었습니다. 웬일인지 나는이 이슈에 대해 고심하고있다. 나는 ShellExecute 또는 CreateProcess에서 DirectX9 게임 창 숨기기
SHELLEXECUTEINFO ShExecInfo = {0};
ShExecInfo.cbSize = sizeof(SHELLEXECUTEINFO);
ShExecInfo.fMask = SEE_MASK_NOCLOSEPROCESS;
ShExecInfo.hwnd = NULL;
ShExecInfo.lpVerb = NULL;
ShExecInfo.lpFile = app_exe; // Path to game
ShExecInfo.lpParameters = "";
ShExecInfo.lpDirectory = NULL;
ShExecInfo.nShow = SW_HIDE;
ShExecInfo.hInstApp = NULL;
ShellExecuteEx(&ShExecInfo);
WaitForSingleObject(ShExecInfo.hProcess,INFINITE);
그리고 CreateProcess를
와 함께 게임이 시작됩니다 두 경우 모두ZeroMemory(&procInfo, sizeof(PROCESS_INFORMATION));
ZeroMemory(&startupInfo, sizeof(STARTUPINFO));
startupInfo.dwFlags = STARTF_USESTDHANDLES | STARTF_USESHOWWINDOW;
startupInfo.hStdInput = GetStdHandle(STD_INPUT_HANDLE);
startupInfo.hStdOutput = GetStdHandle(STD_OUTPUT_HANDLE);
startupInfo.hStdError = GetStdHandle(STD_ERROR_HANDLE);
startupInfo.wShowWindow = SW_HIDE;
CreateProcess(app_exe, cmdline, NULL, NULL, FALSE,CREATE_NO_WINDOW , NULL, NULL,&startupInfo, &procInfo);
WaitForSingleObject(procInfo.hProcess, INFINITE);
성공
없이 독립적으로하지만, 다음과 같은 코드를 사용하고 있으며, 전체 화면으로 게임을 얻는다. 내가 잘못하고있는 것이 있습니까?
글쎄 소스 코드가 없습니다. 이렇게하면 다른 데스크톱에서 DirectX 게임을 실행할 수 있습니다. – Wajih