AHK设置打开程序无法拖放,原因或许有很多种,本人最后排除出是由于通过管理员权限运行AHK,导致窗口这类有关“安全”的操作不得执行,最终导致窗口拖放无效。
解决办法就是从注册表移除管理员权限打开exe,关闭管理员权限即可。
解决办法
打开注册表后搜索——HKCU\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers
,然后在列表中找到AHK
的路径,然后删除即可。
问题起因
补充一点,问题发现的原因,之前通过AHK
设置管理员权限运行,用于mouselnk打开的程序,AHK操作无效的问题。但这样设置完管理员权限执行后,很多拖放文件打开的操作都执行不了,大可不必。
RegWrite, REG_SZ, HKCU\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers,%A_AhkPath%, ~ RUNASADMIN ;以管理员权限运行,否则会在一些mouselnk打开的程序中失效
Return
降权到普通用户打开
RunAs '用户名', '密码' ;
Run 'cmd.exe'
通过AHK修改注册表使任务栏自动显示,但无效,简单做个笔记。
^F2:: ;修改注册表
RegWrite, REG_DWORD, HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer, NoTrayItemsDisplay, 0 ;
return
总结
管理员权限打开AHK,run出来的程序也是以管理员的角色执行,即优先级最前,所以其他程序,无法通过拖放文件这样的方式“入侵”,所以管理员权限慎用!!