[MFC] 在Win10上获取权限后无法运行

我用MFC做了一个小工具,用到了拖拽图标的功能(OnDropFiles())来重命名一些文件,因为涉及到UAC权限问题。

我是在Win7系统上开发的,但是在Win10系统上运行后,获取了UAC权限后,拖拽功能失效,按钮失效,整个exe就无法运行了。

来个爹995

然后现在我把UAC改回去以后 生成的exe以管理员身份启动也导致了我的exe没响应

ChangeWindowMessageFilter(WM_DROPFILES, MSGFLT_ADD);

ChangeWindowMessageFilter(0x0049, MSGFLT_ADD); // 0x0049 == WM_COPYGLOBALDATA
最后添加这两行解决了问题;

 

这个问题原来很常见,像我这样的菜鸡就要多琢磨琢磨