2012-05-09 76 views
0

我的問題是我有我無法修改的代碼反應到ON_UPDATE_COMMAND_UI,我已經在WinForms中託管代碼,所以它不正確路由消息。模仿ON_UPDATE_COMMAND_UI

我已經迷上了我的winform主機中的空閒覆蓋,但我不知道如何模仿這條消息。

如果我想通過直接向目標發送消息來模擬ON_UPDATE_COMMAND_UI,我將如何安排WPARAM和LPARAM。

我已經看過MFC的內核,它看起來並不真的發送消息,它直接從路由命令通過CmdTarget中的方法手動搜索目標的消息映射。

所以,由於我沒有推送真實消息的例子,我不知道該怎麼做。

同等接受的替代解決方案!

回答

0

我看MFC的膽量,看來它不發送消息

這種說法是不正確。 Al路由開始於WM_IDLEUPDATECMDUI消息發送到主窗口和應用程序進入空閒狀態時的所有後代。

當菜單彈出以更新菜單項時,它也會發送。 我不認爲在.NET世界實現它會很容易。

+0

我的意思是它不會爲update_command_ui發送消息。我知道有關閒置的消息。 –