ClickOnce部署。应用程序需要汇编MSDATASRC版本

时间:2013-11-06 10:16:38

标签: c# .net interop .net-assembly gac

我已经创建了ClickOnce部署,并且正在安装它的一些客户端收到错误:

  

无法安装或运行该应用程序。该应用程序需要   程序集MSDATASRV版本7.0.3300.0将安装在Global中   首先是Assumbly Cache(GAC)。

这是一个Microsoft dll,位于我的构建计算机上的“C:\ Program Files \ Microsoft.NET \ Primary Interop Assemblies”中,并在我的项目中引用。

我知道有些客户没有这个。我需要找出这个DLL的来源以及为什么只有部分客户端丢失了它。由于它是Microsoft Dll,我不能自己分发它。

2 个答案:

答案 0 :(得分:1)

您实际上不太可能需要PIA。选择MSDATASRC程序集引用并将其Copy Local属性设置为True。现在,您将在构建目录中获取Interop.MSDATASRC.dll的副本,并将其与其余可执行文件一起部署。

测试一下。如果您在测试代码时遇到InvalidCastException,则需要在用户的计算机上部署PIA。您无法使用ClickOnce执行此操作,您必须要求用户自行安装。下载和安装Office PIA即可完成。您还强烈要考虑更新您的VS版本,VS2010并支持Embed Interop Types选项,也称为“No PIA”选项。

答案 1 :(得分:1)

当我忘记将解决方案配置从Visual Studio中的“Debug”更改为“Release”时,我遇到了同样的错误。

相关问题