【MFC】MFC修改菜單名後不更新問題

MFC之修改菜單名後不更新問題

問題:
菜單名稱修改後還是顯示以前的,沒有更新。

原因:
程序在運行之後將運行信息寫進註冊表,而程序在退出的時候沒有清理掉這些信息,從而導致了在以後程序運行時依然調用前面註冊表裏邊留下的信息去完成界面的初始化以及更新等工作。而我們應該需要的是讓程序在運行的時候調用我們最新的配置或者修改信息,而不是以前的信息。

解決方法:
在程序運行結束後,清理註冊表信息。
找到 CxxxApp 類的成員函數 ExitInstance(),在調用基類 (CWinAppEx) 的ExitInstance()函數之前先調用一次CleanState()函數。如

  int CApp::ExitInstance()  
  {  
      //TODO: handle additional resources you may have added  
      AfxOleTerm(FALSE);  
      this->CleanState();       //清空註冊表信息  
      return CWinAppEx::ExitInstance();  
  }

原文:https://blog.csdn.net/qq_23195213/article/details/65634575

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章