我正在开发用于 excel 和文档级别自定义的 VSTO 加载项。它们将在有多个用户(每个用户大约 10 个)的计算机上使用。有意地,我们确实希望服务器文件夹上的公共数据库和报告文件,而不是我们希望所有 10 个用户都能够访问本地数据库和报告(本地到计算机)。现在我通过两步安装来做到这一点。
首先,InstallShield 项目将所有 ClickOnce 文件、默认模板和数据库文件解压缩为c:\LIMSersTestUnit
. “完成后运行应用程序”从 ClickOnce 文件运行 SetUp.exe。我没有遇到用户使用问题,可能是因为所有内容都是从主文档级别定制中启动的。IE 我用过这种方法,让多个用户登录并成功使用该程序。我的问题是,在部署它时,依靠用户来成功地做到这一点很麻烦。我的第一个尝试是将所有内容都包含在一个 zip 文件中,并告诉他们将其解压缩到正确的目录中,但那是一场灾难。
如果可能的话,我想把它组合成一个安装。我知道VSTO 项目中可以包含一个文件文件夹,但这被放入用户特定的文件夹中。我无法弄清楚如何相对于 root 更改此输出路径。我仍在为此做很多谷歌搜索,但我什至不确定这是否可能。
另一方面,我无法让 InstallShield 正确安装文档级自定义。我一直试图在网上找到一个这样的例子,但到目前为止我失败了。我已尝试将 ClickOnce 出版物中的清单以及 VSTO 项目的主要输出包括在内,但我无处可去。我目前正在检查由 ClickOnce 安装创建的注册表和文件,以尝试克隆它。它在安全方面的作用比我意识到的要多得多。我尝试将 Excel 加载项的注册表路径更改为HKEY_LOCAL_MACHINE下,但到目前为止还没有帮助。
所以我提炼的问题是:我可以使用 ClickOnce 将文件部署到基于根路径的文件夹吗?如果有怎么办?是否有明显的方法或示例说明如何使用 InstallShield 部署 VSTO?我找到了这个,但我无法让它工作。不过,我仍在为此努力。如果有人知道更好的指南,请告诉我。