为什么在win7下全局键盘钩子(用delphi写的)会失效?(在xp下测试能用)如果是权限问题,要怎么提权?

为什么在win7下全局键盘钩子(用delphi写的)会失效?(在xp下测试能用)如果是权限问题,要怎么提权?,第1张

可以通过代码和设置编译器的两种方式来做到。 delphi我不会,我给你C++的代码,你改一下就行了: //提权 HMODULE hDll = ::LoadLibrary("ntdll.dll")typedef int (__stdcall * type_RtlAdjustPrivilege)(int, bool, bool, int*)type_RtlAdjustPrivilege RtlAdjustPrivilege = (type_RtlAdjustPrivilege)GetProcAddress(hDll, "RtlAdjustPrivilege")int nEn = 0RtlAdjustPrivilege(0x14,TRUE,FALSE,&nEn)FreeLibrary(hDll)//结束

Windows下的开发不可避免的会用到bat脚本来做一些重复的工作,尤其是需要注册的插件dll这块。现在大家的开发机一般都是win7或win10,为了和用户环境比较一致,一般都不会关掉UAC的功能。

双击bat脚本执行自动注册或自动运行服务会很方便开发,但是在vista以上的系统经常需要以管理员权限来启动这个脚本,一般都是右键选择管理员权限运行,要是分发给其他人员测试的时候还要特地叮嘱下,要是bat能实现自动检测需要管理员权限,然后d出这个提权的申请框,在提权完成之后再进行工作就好了。

抱着这个需求,找到了stackoverflow,果然不负众望,有人给出了一个 解决方案 ,这里把这个bat脚本贴出来,给有需要的人士。

用《电脑迷》光盘启动(或用雨林木风的ghost安装盘),里面有一个NT密码破解工具(WIN7同样适用),选择C:\WINDOWS后点击“新建一个管理员用户”,输入名称,点击左侧的“应用”重启后稍等即可进入新用户,进行设置。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6436328.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-22
下一篇 2023-03-22

发表评论

登录后才能评论

评论列表(0条)

保存