2010-06-17 43 views
0

我在vs2008中创建了一个outlook 2007插件项目,目标是.net 3.5,然后将该项目迁移到vs2010。Outlook 2007通过点击一次部署的VSTO插件无法检测发布的更新

然后,我已经将项目从vs2010发布到网站,并使用click-once将虚拟机安装到运行xp,.net 3.5 sp1和outlook 2007的虚拟机中。这一切都很好,我可以在outlook中看到我的加载项。发布更新设置设置为在启动时更新加载项,而不是每7天更新一次。

但是,当我然后对加载项进行简单更改时,更新加载项项目的AssemblyVersion和AssemblyFileVersion,然后发布更新,当我运行Outlook时它不检测到有新的版本,只运行当前安装的那个。

我可以看到发布已经生成了一个新的setup.exe,并在当前(自动生成的)发布版本的“应用程序文件”文件夹中添加了一个新文件夹。

任何人都可以建议如何获取更新部署到客户端?

编辑:

我离开了VM没有Outlook运行一段时间(午饭),然后就启动它,它检测到的最新的更新并安装它。但是现在,当我做出另一次更改并重新发布时,它并没有采用它。我想知道这是否与缓存文件有关。我删除了客户端虚拟机上的所有临时Internet文件,但这并没有帮助。

回答

1

它未检测到发布更新的原因是由于iis缓存页面。

我在IIS7管理器中添加了过期通用标题,并将其设置为立即过期,之后,插件在发布时检测到每个更改。

0

仔细检查并确保每次打开应用程序时都设置为检查而不是每天一次。

+0

是的,我双倍和三倍检查它,它绝对没有被限制在一天一次。无论如何感谢 – Matt 2010-06-23 02:39:04

+0

是的,我想,但它是免费的问。你说你正在更新程序集版本 - 这些与ClickOnce完全无关。您是否正在更新加载项属性页的“发布”选项卡中的ClickOnce版本? – RobinDotNet 2010-06-23 06:44:42

+0

是的,我有它设置为自动更新修订,我也修改之前更新的数字,以防万一...我只是刚开始调查clickonce,它似乎工作正如我所期望的,如果我用它来发布一个wpf应用程序,而不是这个特定的vsto加载项。 – Matt 2010-06-23 07:20:12