【发布时间】:2012-07-23 02:49:52
【问题描述】:
前段时间我开发了一个视频游戏,当时 WinXP 是当前的 Windows 版本。游戏需要在系统中安装自己的字体,如果它不存在的话。我不记得我在代码中到底是怎么做的,我想我要么使用了特定的 WinAPI 函数,要么只是将字体文件复制到了 Fonts 文件夹中——无论哪种方式,当时它都可以正常工作。
但是,现在当有人在Win7上运行游戏时,除非用户以管理员身份运行,否则游戏无法安装字体。游戏可以运行,但使用了可怕的默认字体,因此用户甚至没有意识到有什么问题,只是认为游戏看起来很糟糕。
所以我需要的是让 exe 文件始终要求以管理员身份运行。我可以重新编译游戏并设置构建,以便 exe 文件始终需要管理员权限,但我没有一些我已经使用过的 SDK,因此重建可能会有些困难。
所以我想做的是:我可以简单地以某种方式修改 .exe 文件,而不需要源代码,以便它始终要求以管理员身份运行吗?
我发现我需要把它放在清单中:
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
但是我可以编辑 exe 文件的清单吗?我曾尝试使用 XN 资源编辑器来处理资源,但它似乎无法编辑清单。
可以这样做吗?
谢谢。
【问题讨论】:
标签: windows manifest administrator