我想通過mfc調用一個進程,但我需要新的exe必須假裝像一個子對話框。因此,如果新的exe不會關閉,用戶不應該到達主進程(對話框)是否有可能?如何創建一個子exe文件,用mfc進行處理?
1
A
回答
2
是的。當你打開新的進程時,你必須等待用戶關閉子進程,然後你必須使用WaitForSingleObject(pi.hProcess,INFINITE);
下面的代碼...
if(!CreateProcess(NULL, // No module name (use command line).
exePath, // Command line.
NULL,// Process handle not inheritable.
NULL, // Thread handle not inheritable.
FALSE, // Set handle inheritance to FALSE.
NORMAL_PRIORITY_CLASS,// No creation flags.
NULL, // Use parent's environment block.
NULL, // Use parent's starting directory.
&si, // Pointer to STARTUPINFO structure.
&pi) // Pointer to PROCESS_INFORMATION structure.
)
{
cout << "Unable to create\n";}
// Close process and thread handles.
CloseHandle(pi.hProcess);
CloseHandle(pi.hThread);
return false;
}
WaitForSingleObject(pi.hProcess, INFINITE);// wait user till close exe(after close child process then go parent process)
return true;
// Close process and thread handles.
CloseHandle(pi.hProcess);
CloseHandle(pi.hThread);
+1
非常感謝你。 – siyah
0
相關問題
- 1. 創建一個批處理文件來拖放文件到一個exe文件
- 2. 如何使用批處理文件創建EXE可執行文件?
- 3. 如何創建一個用於創建,創建一個批處理文件
- 4. 創建一個exe文件
- 5. 創建exe文件時如何創建一個lib文件
- 6. 創建一個批處理文件,通過FTP更新一個exe文件
- 7. 如何讓一個批處理文件創建另一個批處理文件
- 8. 批處理文件'type >>'如何創建一個新行?
- 9. 如何用C++創建一個進程來執行exe?
- 10. 如何使用批處理文件執行任何.exe文件?
- 11. 創建一個批處理文件運行一個EXE amd在Exe完成後關閉它
- 12. 從批處理和Vbscript創建Windows可執行文件(.exe)
- 13. 批處理文件,創建另一個批處理文件
- 14. 如何創建一個檢查EXE版本的批處理文件,然後執行一個操作?
- 15. 如何從我創建的文件(.cs文件)創建一個exe文件?
- 16. 執行TXT文件到一個EXE文件由Windows批處理
- 17. 如何用一個nsis腳本創建兩個exe文件?
- 18. 如何從多個exe文件創建可執行文件?
- 19. 使用MFC創建WM_USER處理程序
- 20. 創建一個批處理文件
- 21. 創建一個批處理文件
- 22. 如何使用批處理創建一個vbs文件
- 23. 運行批處理文件調用一個exe
- 24. 如何從一個elixir項目創建一個exe文件
- 25. 批處理文件:運行一個子
- 26. 使用批處理文件創建exe的快捷方式
- 27. 如何處理MFC中動態創建的對象的事件?
- 28. 如何創建一個gui來調用.exe或.cpp文件?
- 29. 創建一個.bat文件以管理員身份運行exe文件
- 30. 創建一個獨立的.exe文件
如果我明白你的意思,你可以簡單地產生新的進程,並關閉當前(父)進程 – Leon
沒有用戶之後完成了她的工作,在新的EXE,她可以打開第一個mfc exe文件。 – siyah
所以你想讓新的進程對話框模式,並採取所有的屏幕? – Leon