C# SSIS包失败,因为;脚本任务失败,因为脚本未预编译";
我开发了一个非常简单的SSIS包(在VS2005 w/.Net Framework V 2.0.50727 SP2中),它获取要发送电子邮件的用户列表,启动for each循环容器,然后执行一个脚本任务来检索特定于用户的数据并通过电子邮件发送给用户。当我在我的dev box上运行它时,一切都很好,运行正常。但是,当我将包部署到运行Windows NT 5.2(Build 3790:Service Pack 2)上的Microsoft SQL server 2005-9.00.5000.00(X64)标准版(64位)的生产服务器时,任务失败 原始错误消息为: 以用户身份执行:xxxxx。Microsoft(R)SQL Server针对64位代码执行包实用程序版本9.00.5000.00:0x00000009源代码:PackageName说明:由于未预编译脚本,因此无法在64位环境中执行任务。请在任务编辑器中启用预编译脚本的选项。结束错误。。。错误DTExec:包执行返回DTSER_失败(1) 经过广泛研究,互联网站建议我尝试:C# SSIS包失败,因为;脚本任务失败,因为脚本未预编译";,c#,sql-server,windows,ssis,visual-studio-2005,C#,Sql Server,Windows,Ssis,Visual Studio 2005,我开发了一个非常简单的SSIS包(在VS2005 w/.Net Framework V 2.0.50727 SP2中),它获取要发送电子邮件的用户列表,启动for each循环容器,然后执行一个脚本任务来检索特定于用户的数据并通过电子邮件发送给用户。当我在我的dev box上运行它时,一切都很好,运行正常。但是,当我将包部署到运行Windows NT 5.2(Build 3790:Service Pack 2)上的Microsoft SQL server 2005-9.00.5000.00(X6
- 失败,因为“选项”/X86”无效。“
- 这不适用,因为我已经在SP2上运行了
- 确保每个脚本任务的PreCompile=True
- 打开脚本任务编辑器,切换到脚本选项卡,并确保 PrecompileScriptIntoBinaryCode=True
- 单击设计脚本打开代码编辑器(Visual Studio for Applications),然后使用文件>关闭并返回选择它(VSA将重新编译二进制代码并将其存储在包中)
- 生成项目并复制到目标位置
我还没有下载修补程序,如果可以避免的话,我不想下载(我们的OPs团队不喜欢在生产服务器上运行修补程序)。转到软件包,打开脚本组件,然后在Visual Studio中(查看代码时)单击BUILD。如果没有问题阻止它编译,这将编译包。然后保存,返回并确保单击“确定”而不是“取消”,如果单击“取消”,则整个过程将恢复。转到软件包,打开脚本组件,然后在Visual Studio中(查看代码时)单击“构建”。如果没有问题阻止它编译,这将编译包。然后保存,返回并确保您单击“确定”而不是“取消”,如果您单击“取消”,则整个过程将恢复