无法执行SendMessage()?

时间:2014-07-30 04:52:53

标签: visual-c++ mfc

当我执行时:

SendMessage(hMsgBox, WM_COMMAND, IDOK, NULL)

始终是ANSI并告诉错误:

error C2660: 'SendMessageA' : function does not take 4 parameters. 

为什么不采取UNICODE?

这是我的实际代码

MessageBox("Plsease wait..","Wait",0);



        HWND hMsgBox = NULL;
        hMsgBox = (HWND)FindWindow("#32270", "Wait");
        if (hMsgBox != NULL)
        {
             SendMessage(hMsgBox, WM_COMMAND, IDOK, NULL);
        }

1 个答案:

答案 0 :(得分:3)

你必须在SendMessage前加上:: like like,这样就不会调用当前类的(CWnd)SendMessage。

::SendMessage(hMsgBox, WM_COMMAND, IDOK, NULL);

另外,您必须在编译器选项中定义UNICODE预处理程序标志,以便它采用unicode版本。