我正在创建一个程序来监视Windows中C ++中剪贴板的更改。
我会使用功能AddClipboardFormatListener
,但是编译器给我这个错误:
在此范围内未声明AddClipboardFormatListener
即使添加windows.h
库。
我应该怎么做才能使这项工作?
最佳答案
AddClipboardFormatListener()
,RemoveClipboardFormatListener()
和GetUpdatedClipboardFormats()
仅在Vista和更高版本上可用。在XP和更早版本上,您需要使用SetClipboardViewer()
和ChangeClipboardChain()
代替。
在Win32 SDK中,仅当WINVER
至少为0x0600
(又名_WIN32_WINNT_VISTA
)时才声明侦听器函数,这意味着您的项目被配置为仅针对Vista +编译可执行文件。
有关更多详细信息,请参见Using the Windows Headers。
如果使用较小的WINVER
值编译项目以与XP或更早版本兼容,则不能在编译时静态链接到侦听器函数,否则在XP或更早版本上运行时,可执行文件将无法加载。如果要在这样的可执行文件中使用Vista +上的侦听器功能,则必须在运行时使用GetProcAddress()
动态加载这些功能。
关于c++ - 未在此范围内声明AddClipboardFormatListener,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38274538/