我采用 Dev-C++ 編寫了一個入口程序,代碼如下:
#include <Windows.h>
int main()
{
char sCommandLine[MAX_PATH];
PROCESS_INFORMATION pi;
STARTUPINFO si = {sizeof(si)};
if (CreateProcess(NULL,"FetionVM.exe C:\Windows\regedit.exe",NULL,NULL,FALSE,0,NULL,NULL,&si,&pi)) /*啟動"注冊表"作為子進程
被調用對象在這裡是個示例,請根據自己需要設置路徑,也可以使用相對路徑,請將來該路徑設置成我們需要運行的.Net應用程序。*/
{
CloseHandle(pi.hThread);//關閉子進程的主線程句柄
//WaitForSingleObject(pi.hProcess, INFINITE);// 等待子進程的退出 注釋掉該句 調用對方後馬上關閉自身
CloseHandle(pi.hProcess);// 關閉子進程句柄
}
}
用Dev-C++編譯該段代碼,生成的EXE存放於 FetionVM.exe同一目錄,運行生成的該EXE既可實現無框架運行.Net 托管應用程序。