安装时为Windows窗体应用程序创建安装程序而无需管理员密码

时间:2018-08-02 05:50:23

标签: c# setup-project visual-studio-setup-proje

我在Visual Studio中开发了一个Windows窗体应用程序。现在,我想在没有管理员权限的情况下将Windows应用程序安装在我的PC上。如何创建设置。 (我已经在没有管理员权限的情况下在PC上安装了Photo Pad图像编辑器应用程序。)

2 个答案:

答案 0 :(得分:1)

您最好的选择是使用 ClickOnce 。安装典型的应用程序不需要管理员权限。原因之一是因为ClickOnce应用是为当前用户安装的,而不是为本地计算机上的每个用户安装的。

您可以从项目设置的发布标签中进行操作。最好的部分是不需要编程。

答案 1 :(得分:0)

使用Visual Studio安装项目很难做到这一点,因为它们已经多年没有更新,尤其是关于UAC合规性。这是概述,没有UAC对话框的创作软件包:

https://docs.microsoft.com/en-us/windows/desktop/msi/authoring-packages-without-the-uac-dialog-box

在Visual Studio世界中,通常可以归结为:

  1. 您不能将安装用于,禁止写入或更改受限用户所禁止的任何内容。换句话说,如果您没有被提升,则无法在程序文件文件夹中安装文件,创建HKLM注册表项,安装服务等。您不能仅由于进行安装就绕过安全规则。无论MSI如何构建,这都适用。

  2. 在Visual Studio安装项目中,将InstallAllUsers设置为False(项目属性窗口),并且不允许用户在“安装文件夹”对话框属性窗口中将其更改(将InstallAllUsersVisible设置为false)。

  3. 构建MSI文件后,使用Orca(MSI文件编辑器)和“查看摘要信息”将其打开,然后设置“符合UAC的标志”。

Visual Studio并不是解决此问题的最佳工具,但是至少可以使您到达那里,但是请注意,它将按用户安装,该机器的其他任何用户都看不到。