VC 重新启动应用程序

void ReStart(BOOL bNormal)
{
PROCESS_INFORMATION info;
STARTUPINFO startup;
char szPath[128];
char*szCmdLine;

GetModuleFileName(AfxGetApp()
->m_hInstance,szPath,sizeof(szPath));
szCmdLine
=GetCommandLine();
GetStartupInfo(
&startup);
BOOL bSucc
=CreateProcess(szPath,szCmdLine,NULL,NULL,
FALSE,NORMAL_PRIORITY_CLASS, NULL,NULL,
&startup,&info);
if(bNormal && bSucc)
{
CWnd
*pWnd = AfxGetMainWnd();
if(pWnd!=NULL)
{
pWnd
->PostMessage(WM_CLOSE,0,0);
}
else
{
ExitProcess(
-1);
}
}
else
{
ExitProcess(
-1);
}
}
posted @ 2011-09-06 19:06  likebeta  阅读(1077)  评论(0编辑  收藏  举报