我编写了一个outlook addin,其中包含一些访问webservice并在其上执行方法的基本功能。一切都像魅力一样,除了我似乎无法摆脱用户需要管理员权限来安装此加载项的事实。 Google似乎没有真正的解决方案或答案。
是否可以编写一个outlook addin(VSTO),用户可以在不需要管理员权限的情况下安装它?
非常感谢提前!
这取决于您是否需要每用户安装或每台计算机安装。
主要区别在于HKLU或HKLM下保存注册表项的位置:
另一个主要区别是Per-User默认设置为在Users文件夹中安装,Per-Machine默认设置为Program Files。
正如@Aron提到的某些先决条件可能需要管理员权限才能安装。如果您知道客户端安装了正确的.Net版本,则可能。否则你可能需要诉诸running the VSTO Add-In without .Net。注意:Microsoft Info路径完全用.Net编写,因此如果用户具有完整的办公室安装,则应该已经安装了.Net 2.0(可能更新,具体取决于版本)。
避免UAC提示的最简单方法是运行MSI而不是setup.exe。因为setup.exe负责下载/安装组件(例如dotnet)。运行MSI不会要求管理员。
还要注意MSI命令行用法以查看所有交换机(例如/ quiet):
开始>运行> CMD> Enter
c:\Apps\App1\Release\app.MSI /?
我知道这很老了,但是这个过程仍然没有多少帮助。
一个可能的解决方案,如果您的唯一目标是与某人共享您的项目而不是专门“安装”。我确定这个方法存在一些问题,但它非常简单,到目前为止,我的团队工作简单。此外,我的团队不允许在他们的开发机器上访问互联网,这使标准的发布过程变得复杂。
发布项目。 (这是VS2017你可能会有所不同)
接下来,我们需要将其直接添加到某人的办公室计划中。您可以直接添加它
现在应该添加您的vsto加载项。
答案是肯定的,不是。就其本身而言,可以通过ClickOnce安装VSTO插件而无需管理员权限。
但是,某些先决条件可能需要管理员权限才能安装(例如dotnet)。
所以在一般情况下没有。但它可能是可能的。