怎么在对话框中控制主窗口菜单

如何在对话框中控制主窗口菜单
我希望在对话框中做了修改然后按确定后在完成相应操作的同时在主窗口菜单的某个选项前面打勾。
我通过下面的代码来获得菜单的句柄
CMainFrame*   pWnd   =   (CMainFrame*)AfxGetMainWnd();
HMENU   menu   =   pWnd-> GetMenu()-> GetSafeHmenu();
然后用CheckMenuItem函数来控制菜单。
可是运行结果发现菜单没有响应
调试发现menu没有得到相应的菜单句柄,而且unused也无法得到运算结果
请问是什么原因?

------解决方案--------------------
通过这个菜单项的CmdUI来动态更新菜单。
设个标志让菜单更新的时候,根据标志判断打不打勾。
------解决方案--------------------
给某菜单ID在MainFrame上添加MessageHandle:UPDATE_COMMAND_UI

void CMainFrame::OnUpdateXXX(CCmdUI* pCmdUI)
{
// TODO: Add your command update UI handler code here
pCmdUI-> SetCheck(m_b是否打勾);
}