vc6无法调用BroadcastSystemMessage

    VC6里调用系统API广播消息,编译报错: error C2065: 'BroadcastSystemMessage' : undeclared identifier! 但是在VS08下编译一切正常. 

    在winuser.h 里面添加调试宏(#error test),发现  __WIN32_WINNT  宏没有定义, 看来VC6太out了,系统API都不支持了,解决方案在windows.h前强制添加_WIN32_WINNT宏定义

#define _WIN32_WINNT 0x0500  // 强制性定义_WIN32_WINNT宏
#include <windows.h>
#include <stdio.h>

int main(int argc,char **argv)
{
	DWORD bsm=BSM_APPLICATIONS; // 向所有进程广播通知消息
	BroadcastSystemMessage(BSF_POSTMESSAGE,&bsm,WM_NOTIFYFORMAT,NULL,NULL);

	getchar();
	return 0;
}

    再编译,继续报错: error LNK2001: unresolved external symbol __imp__BroadcastSystemMessageW@20

debug/xm.exe : fatal error LNK1120: 1 unresolved externals , 无法链接该方法, 在工程属性添加user32.lib即可

你可能感兴趣的:(vc6无法调用BroadcastSystemMessage)