2

我在Visual Studio Installer中从应用程序.EXE创建了一个快捷方式,但是当我右键单击快捷方式图标时,生成的快捷方式没有“以管理员身份运行”选项。

Program Files 中的应用程序.EXE确实允许右键单击此选项。如果我从.EXE(即“创建快捷方式”)而不是从部署中手动创建快捷方式,则生成的快捷方式也具有该选项。

如何在Visual Studio 安装程序中部署应用程序以包含在右键单击时启用“以管理员身份运行”选项的快捷方式?

4

2 回答 2

2

我花了很长时间寻找解决方案。真的很神奇,因为它必须是所有 Visual Studio 安装程序项目的情况。

在撰写本文时,我正在使用 Visual Studio 2017 社区,但我在 IDE 中看不到任何执行此操作的选项。

显然,这是一个导致.msi创建的快捷方式是“广告快捷方式”的问题。我会让你在自己的时间里发现你想知道的。(就我个人而言,我不在乎。)

您需要做的是强制快捷方式为“非广告”。

这是我在 SO 中发现的两个解决方案中更好的一个。我认为它更好,因为它 1) 不包括为每个解决方案调整安装程序项目,并且 2) 不涉及.msi在每次构建后手动编辑文件。

顺便说一句,对于这个解决方案的这个 SO 帖子上的人来说,这是完全值得的。你知道你是谁。我发帖是因为从这个问题上看它是否能解决这个特定问题并不明显。

您所做的是对 msi 创建模式文件进行一般更改,以便将更改传播到您未来的所有构建。您需要 Orca 进行初始更改。

  1. 在此处下载 Windows SDK 安装程序。

  2. 在安装程序中选择“MSI 工具”。

  3. 安装在{Installation Folder}\Windows Kits\10\WindowsSDK\Installers中找到的 Orca-x86_en-us 。

  4. 找到位于{Visual Studio Program Folder}\Common7\IDE\CommonExtensions\Microsoft\VSI\bin\VsdSchema之类的文件“Schema.msi” 。

  5. 在 Orca 中打开“Schema.msi”。

  6. 如果文件夹是只读的,请将其复制到桌面,并在步骤 9 后替换原始文件夹。

  7. 选择左侧的“属性”表。

  8. 添加具有属性DISABLEADVTSHORTCUTS和值“1”(真)的表格行。

  9. 保存文件并关闭 Orca。

  10. 重建您的安装程序项目并(重新)部署您的应用程序。

  11. 享受“以管理员身份运行”的能力!

最后一点:我发现对 Visual Studio 的更新可以覆盖您所做的更改,再次删除“以管理员身份运行”上下文选项。所以每次更新后检查msi文件。

于 2019-03-14T20:37:29.433 回答
1

如果您有清单,则可以要求具有管理员权限,将以下内容添加到清单中

<requestedExecutionLevel level="highestAvailable" uiAccess="false" />

请参阅 http://msdn.microsoft.com/en-us/library/bb756929.aspx

您还可以在注册表的帮助下以管理员身份运行任何文件类型,请参阅 http://www.howtogeek.com/howto/windows-vista/add-run-as-administrator-to-any-file-type-in ​​- windows-vista/

于 2013-04-01T13:09:10.730 回答