MFC: 将自己终止后重启

具体步骤:

1. 创建一个MFC应用程序

2. 添加WM_CLOSE消息响应函数(也可以使用默认函数)

3. 触发一个事件

4. 在这个事件中加入相关的控制程序

控制程序代码如下:
    USES_CONVERSION;

    CMFCApplication1App* thisApp = (CMFCApplication1App*)AfxGetApp();
    CloseHandle(theApp);                                                // 根据全局变量关闭程序里面相关的句柄
    ::SendMessage(thisApp->m_pMainWnd->GetSafeHwnd(), WM_CLOSE, 0, 0);  // 发送关闭消息
    TCHAR strSelfpath[MAX_PATH];
    GetModuleFileName(NULL, strSelfpath, MAX_PATH);                     // 获得自己路径
    WinExec(W2A(strSelfpath), SW_SHOW);                                 // 启动自己

但是记住:不能在程序初始化的过程中加入防止多开的功能

你可能感兴趣的:(mfc,c++)