今天遇到个棘手问题,在此记录下,C#WinForm程序以管理员方式运行后,文件无法拖动到任何控件上,DragDrop事件根本没触发,文件拖动生成记录功能成了摆设。
问题的原因找到了,由于Win7的安全机制,导致与文件拖放的WM_DROPFILES消息和WM_COPYGLOBALDATA
消息被系统拦截了,从而导致了文件拖放失效的问题。
解决思路一:
可参考 https://blog.csdn.net/chenlycly/article/details/7657701
解决思路二:
将需要管理员权限启动的部分做成另一个单独的exe程序,在主程序中用调用,
可参考https://blog.csdn.net/liushuijinger/article/details/8463574
解决思路三:
感谢网友提示的这个方法,有时间试下,希望能解决问题,在此记录下。
https://zhuanlan.zhihu.com/p/48735364?from_voters_page=true