64位环境中的SSIS脚本任务

时间:2010-06-04 09:20:05

标签: ssis build-process 32bit-64bit

SSIS(SQL 2005)包具有调用自定义.NET dll的脚本任务,在64位环境中运行时会抛出以下错误

该任务无法在64位环境中执行,因为该脚本未预编译。请打开选项以在任务编辑器中预编译脚本。

脚本任务设置为PreCompile = false,因为引用的dll是由构建过程生成的。

建议的解决方法是:

选项1.使用precompiled = True,在构建完成后打开,保存并关闭BIDS中的包 。这将重新编译引用并在SSIS包中生成嵌入的64位二进制文​​件,并将导致上述错误消失。但是,这也意味着有人必须在构建完成后手动打开SSIS包。

选项2.坚持32位模式。

选项1是两者中可行的一个,但不切实际。使用200个SSIS包 - 每次生成构建时,我们都无法完成此任务。

选项2是不可能的,因为32位不适合我们。

现在问题: 1.你们有没有为你的SSIS包构建过程?如果是,您可以分享您的做法吗? 2.如何管理脚本任务?您是否愿意在脚本中捆绑引用的dll的开发人员版本?

2 个答案:

答案 0 :(得分:1)

这可能不是你想听到的,但我建议探索用自定义组件替换你的一些脚本任务的想法。 Codeplex上有很多样本。这将允许轻松更新,因为您只需将新组件构建和引用的程序集放入GAC。

HTH

答案 1 :(得分:0)

Pragmatic Works有一些名为BI xPress的东西(我从未使用过),它有something可能有帮助。