最近使用mfc 作了一个cef得浏览器 多标签得。当使用这个封装得浏览器一段时间以后(超过1分钟2分钟)浏览器
当关闭封装得浏览器整个窗体 x得时候,整个窗体又从新弹了出来。spa
大概现象就是一个exe程序你杀掉了以后它又从新启动了。.net
后来对比了一下别得例子,发现了一个可能会致使mfc应用程序重启的地方:code
// CmhtBrowserApp 构造 CmhtBrowserApp::CmhtBrowserApp() { // 支持从新启动管理器 m_dwRestartManagerSupportFlags = AFX_RESTART_MANAGER_SUPPORT_RESTART; // TODO: 在此处添加构造代码, // 将全部重要的初始化放置在 InitInstance 中 }
上面的代码中有一句是 :blog
// 支持从新启动管理器
m_dwRestartManagerSupportFlags = AFX_RESTART_MANAGER_SUPPORT_RESTART;it
这个查了资料说是mfc的重启功能,或者当mfc应用程序遇到灾难性状况会从新启动崩溃的mfc应用程序。io
个人目的是关闭mfc应用程序以后不要再从新启动,因此注释了下面的启动模块:class
// CmhtBrowserApp 构造 CmhtBrowserApp::CmhtBrowserApp() { // 支持从新启动管理器 // http://blog.itpub.net/9899936/viewspace-666739/ //关闭以后又从新打开颇有多是由于mfc得遇到灾难性状况从新启动该程序 by_songgp add20190613 //m_dwRestartManagerSupportFlags = AFX_RESTART_MANAGER_SUPPORT_RESTART; // TODO: 在此处添加构造代码, // 将全部重要的初始化放置在 InitInstance 中 }
参考:http://blog.itpub.net/9899936/viewspace-666739/程序