首先大家好,感谢您多次在这里搜索帮助我或教会了我一些东西。
我已经为我玩的游戏制作了一个自定义 HUD,并且正在使用 C# 开发一个安装程序,灵感来自同一游戏的另一个 HUD。它将所有脚本文件下载并覆盖到现有目录:
C:\Program Files (x86)\Steam\steamapps\me\team fortress 2\tf
[不幸的是,我无法控制使用哪个文件夹,因为我正在修改 Valve 安装的文件]
为了删除文件夹、添加文件夹或复制文件,我不得不在每次启动 exe 时使用应用清单来增加用户权限:
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
不知何故,我受到启发的安装程序正在安装到与我相同的文件夹中,而无需强制 UAC 提示。
他的应用程序只显示一个安全警告,但如果我取消选中“始终检查”复选框,我可以一遍又一遍地运行它,而无需验证任何特殊权限:
http://www.trishtech.com/img_art_a/win7_publisher_not_verified_0.jpg>">
关于如何使我的应用程序像他的一样无缝的任何建议?我已经联系了另一个应用程序的作者,他说他也在使用 C#,但不知道他正在做什么特别的工作来完成这项工作。
编辑:我知道我们正在做一些不同的事情,以防万一他们以某种方式有所作为:
- 我正在使用文件浏览器来决定将文件放在哪里,因此可以从任何地方运行该应用程序。
- 他只是将它们输出到与exe相同的目录,要求将exe放在目标文件夹中。
- 我正在使用 ILMerge 将 SharpZipLib 与我的应用程序捆绑在一起。
- 他只是将 dll 留在了 exe 旁边的 zip 文件中。