delphi – Windows 7升级权限

我有一个自动升级”机制已经在 Windows XP下工作多年,在Windows 7下失败,因为提示用户(Windows XP下从未存在)授予程序以管理员权限运行的权限没出现.

win32程序(用Borland Delphi编写)使用logonUser()和ImpersonateLoggedOnUser()模拟用户(具有管理员权限的本地帐户),以便它可以替换Program Files文件夹中的所选文件.

如果我使用此用户帐户手动登录到Windows 7,然后尝试删除程序文件文件夹中的文件Windows 7提示我允许程序继续进行 – 如果我授予该权限,则该文件删除,如果我拒绝许可报告“访问被拒绝”,不允许删除.

当尝试与上述相同的事情时,“访问被拒绝”是没有给用户提示的结果.

我看到一个类似的问题(有关临时文件的创建(给出的答案的主要推荐是非常正确的“不要这样做”),这样的提示可以在代码中提出,但是我看不到实际上解释了该方法.

解决方法

您只需要将自动更新程序标记为在 application manifest中要求提升的权限.

那就是说你可能想考虑安装某个用户有写权限的地方.

相关文章

 从网上看到《Delphi API HOOK完全说明》这篇文章,基本上都...
  从网上看到《Delphi API HOOK完全说明》这篇文章,基本上...
ffmpeg 是一套强大的开源的多媒体库 一般都是用 c/c+&#x...
32位CPU所含有的寄存器有:4个数据寄存器(EAX、EBX、ECX和ED...
1 mov dst, src dst是目的操作数,src是源操作数,指令实现的...