背景
我的C ++应用程序由VS2008开发,并使用VS安装项目为其创建安装程序。安装后,它将创建两个应用程序快捷方式。一个在用户桌面,第二个在开始菜单。应用程序(myApp.exe)安装到Program files
目录。
问题:如果我右键单击开始菜单中的图标,大多数都会有一个选项Run as Administrator
。但是,如果我右键单击与我的应用程序相关的快捷方式。它没有显示Run as Administrator
。如何解决这个问题?
修改但如果我右键点击myApp.exe
中的Program files
,则会显示“以管理员身份运行”。
答案 0 :(得分:0)
在清单文件中有选项“requestedExecutionLevel”和“UIAccess”来管理它。
答案 1 :(得分:0)
将嵌入式清单设置为需要管理员。在项目属性页面上:
...在(突出显示的)UAC Execution Level
上,将asInvoker
更改为requireAdministrator
。构建你的项目以嵌入新的清单,它应该准备好做它的事情。
哦 - 我不想在这里做,但在Configuration
下拉列表中,您可能想要选择All Configurations
,而不是(默认)Active
在屏幕截图中选择的配置。变得非常烦人 - 你认为你已经解决了问题,然后你改为“发布”,一堆东西突然中断,你必须弄清楚你改变了什么,并将这些变化编辑到{ {1}}配置也是如此。
答案 2 :(得分:0)
经过大量的测试和搜索,我找到了答案。所以我在这里提到它用于任何一个。
Run as Administrator
,其中包含直接定位到某个exe
文件的快捷方式。exe
(Application.exe)文件。installation-on-demand and advertisement
。 Here是更多细节。为此,您可以使用命令提示符或某些工具。这是怎么做的。
exe
和msi
。msi
处。DISABLEADVTSHORTCUTS=1
添加到属性表。使用命令提示符:
msiexec /i <path to your msi> DISABLEADVTSHORTCUTS=1
使用Orca工具(还有Meny其他工具)
*.msi
文件,然后点击edit with orca
。DISABLEADVTSHORTCUTS
,值为1
,保存并关闭。exe
文件。Run as Administrator
选项的快捷方式。 注意:这样做会获得Run as Administrator
,但会使windows auto repair
能力受损。