为什么SSIS工具箱中没有显示SSIS自定义任务?

时间:2013-07-15 22:54:57

标签: ssis sql-server-2012 sql-server-2012-datatools

我有一些自定义控制流和数据流任务没有显示在SSIS工具箱中。当我在包含自定义任务的SSDT中打开一个包时,我得到几个加载包的错误。

Error loading MyModuleTemplate1.dtsx: Cannot create a task from XML for task "__ECT Fetch Configuration", type "MyEncryptedConfiguration, MyCustomTasks, Version=1.0.0.0, Culture=neutral, PublicKeyToken=2bdffe791d57af79" due to error 0x80070057 "The parameter is incorrect.".

我跟随了Russ'和Matt对以下帖子http://social.msdn.microsoft.com/Forums/sqlserver/en-US/5fdf9243-7e38-401e-bf4a-9251738877f9/how-to-browse-the-installed-custom-task-in-sql-server-2012-ssis-ie-custom-ssis-control-flow-task的回复,然而,这些任务仍未显示。

我在Windows Server 2008 R2 x64上使用带有SSDT的SQL Server 2012 x64。我已经验证了任务在GAC中,并且程序集位于相应的SQL Server \ 110 \ DTS目录中。程序集已编译为32位,因为在引用32位程序集(SQL引用程序集)时,我不断收到有关定位任何CPU的警告。

我可以通过命令行在目标服务器上成功执行自定义任务的包。此外,这些任务在我的开发机器上运行良好。我可以在SSIS工具箱中看到任务,并可以打开包含任务的包。除了我已完全安装Visual Studio 2010之外,我的开发机器几乎与目标机器相同。

我错过了什么吗?

1 个答案:

答案 0 :(得分:0)

此问题是WiX安装程序未正确安装自定义任务的结果。以下是我为验证这一点所做的工作。

出于测试目的,我创建了一个空的自定义任务,并通过复制文件和DTS \ Tasks目录将其手动部署到目标服务器。这样可行,所以我将其中一个抛出错误的任务的.cs文件添加到测试自定义任务并重新部署。我能够看到这两项任务。使用原始自定义任务清理解决方案后,我手动将原始自定义任务部署到目标服务器,如测试自定义任务,并且能够在SSIS工具箱中查看任务。然后我卸载了自定义任务并使用WiX安装程序将它们部署到目标服务器 - 问题重新浮出水面。所以问题在于安装程序。我以前手动安装自定义任务的尝试失败了,因为我使用的是从WiX安装程序安装的程序集,虽然我不知道为什么。