VC实现当前程序退出后重启

来源:互联网 发布:广东高考难度 知乎 编辑:程序博客网 时间:2024/06/09 19:45

所谓重启就是杀死系统的当前进程,然后重新开一个新进程。

void CTestRebootDlg::OnBnClickedButton1(){::PostMessage(AfxGetMainWnd()->m_hWnd,WM_SYSCOMMAND,SC_CLOSE,NULL);//获取exe程序当前路径TCHAR szAppName[MAX_PATH];:: GetModuleFileName(NULL, szAppName, MAX_PATH);std::wstring strCommandline = L"\"-scmd\" \"appid\" \"100\"";wchar_t pszCommandline[1024] = { 0 };wcscpy_s(pszCommandline, strCommandline.c_str());//重启程序STARTUPINFO StartInfo;memset(&StartInfo, 0, sizeof(STARTUPINFO));StartInfo.cb = sizeof(STARTUPINFO);PROCESS_INFORMATION procStruct;memset(&procStruct, 0, sizeof(PROCESS_INFORMATION));//::CreateProcessW((LPCTSTR)szAppName,(LPWSTR)pszCommandline,//命令行参数放置于此NULL,NULL,FALSE,NORMAL_PRIORITY_CLASS,NULL,NULL,&StartInfo,&procStruct);}




0 0
原创粉丝点击