我有一个非常简单的部件,其修剪所有前导和结尾间隔从(读/写)在管线中的字符串。据我所看到的,我只有这个dll我的开发机器上的一个二进制文件。我将其传送到另一个开发机器,并在GAC中注册它,但是当我打开包我复制到第二台机器,我得到这样的警告:

错误1验证错误。数据流任务:DTS.Pipeline:对于“组件‘TrimColumnsComponent’(1909年)”的组件元数据无法升级到组件的更新版本。该PerformUpgrade方法失败。 LD_CXSUM.dtsx 0 0

我在工具箱中的分量,并且我可以拖动另一个到所述数据流画布和它不会出现有任何问题。

这是SQL Server 2005和Visual Studio 2005的在两台机器上。

在第二机器,我可以从头开始创建一个包,它将所建立起来的组件的机器上的负载(但图标是标准的用户组件图标,因为它是在第二机器上的相同)。如果我从头开始构建机器上创建一个包,它具有正确的图标,但它给出了非构建机器上升级的消息。该文件是在部件目录相同的,它们具有相同的组件类ID和它们在GAC注册。

我已通过检查XML和在生成机器和非生成计算机上创建的包手动检查DTSX文件,类ID和公共密钥是机器之间是相同的。

什么原因?

有帮助吗?

解决方案

通常,这意味着该包装保存后的成分被升级,并且因此它的在错误的版本号。你必须重新添加该组件,不幸的 1

您可能能够将包保存为一个新的版本,并尝试当迁移。这可以解决被称为自动升级的问题(以及随后失败的)。

其他提示

您正面100%的GAC组件的副本的计划Files \ Microsoft SQL Server中的复制\ 90个\ DTS \ PipelineComponents文件夹匹配?海关总署副本用于在运行,并且PipelineComponents下副本用于由VS IDE。如果您在x64机器上运行,我会确保你将它复制到文件夹PipelineComponents同时定期Program Files文件夹和x86文件夹下。

包括客户端工具SDK 客户端工具向后兼容性在SQL Server安装解决了这个问题升级为我。

我有同样的问题,这一轮,我的方式是部署整个项目,而不是一个单独的包。这解决了问题并启用包作为正常运行。

我有同样的问题,我的解决方案是与从@AppleG之一。通过部署一个单一的包,而不是整个项目所产生的问题。该项目是由另一个开发较早的部署,最有可能有略微不同版本的Visual Studio或部署向导。然后我从VS部署后只有一个包。

在总结,部署整个项目又解决了问题。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top