ClickOnce部署,系统更新需要Microsoft.mshtml

时间:2008-09-10 17:24:56

标签: clickonce microsoft.mshtml

我们有一个适用于MS Office并使用Microsoft.mshtml.dll的应用程序。我们使用ClickOnce来部署应用程序。应用程序在大多数计算机上部署都没有问题,但有时我们会收到“需要更新系统,Microsoft.mshtl.dll应该在GAC中”的错误。

我们试图在没有运气的情况下安装PIA for Office。由于Microsoft.mshtml.dll是系统相关文件,因此我们无法将其包含在包中并重新分发。什么是部署应用程序的最佳方式?

4 个答案:

答案 0 :(得分:1)

您知道要定位的MS Office版本吗?这些PIA非常特定于Office的版本。我记得当我们构建智能客户端应用程序时,我们曾经使用Build VM机器,每台机器都针对特定版本的Outlook。

另一个障碍是无法将这些PIA指定为先决条件或将其与应用捆绑在一起。需要使用Office CD(at least for 2003 version)在客户端上安装这些PIA。

答案 1 :(得分:0)

您可以set up prerequisites in a clickonce app,它会在允许用户安装之前检查GAC中的特定程序集。您仍然需要在ClickOnce之外手动安装包含所需office dll的应用程序,但您至少应该避免抛出错误。

答案 2 :(得分:0)

我们的目标是Office 2003和Office 2007,但使用Office 11(2003)dll作为Office 2007是向后兼容的。

仅Microsoft.mshtml.dll文件出现此问题。此文件是ClickOnce应用程序中的先决条件。

在这个特定的安装中,我们尝试安装Office 2003和Office 2007 PIA都无济于事。

答案 3 :(得分:0)

我也有这个问题。

解决方案是转到解决方案资源管理器中的References文件夹,然后右键单击Microsoft.mshtml,然后单击属性。

在Propoerties页面中,将“Copy Local”标记为True。 这应该有用。