SSIS不使用INT服务器上的执行进程任务执行.EXE

时间:2014-05-16 14:33:01

标签: c# ssis cmd migration robocopy

我有一个可执行文件我能够在没有在Int环境中运行的Dev环境中运行。当我尝试使用UNC路径远程运行Int上的.EXE时,我收到一条错误,指出.EXE是一个16位应用程序,无法在Int机器上运行。该错误的问题是我构建了.EXE,并且知道它不是一个16位应用程序。当我尝试运行SSIS包来调用Int上的.EXE时,我没有收到16位错误,但是.EXE没有运行。

我尝试在执行流程任务中硬编码.EXE的位置,并使用一个变量,该变量根据我运行SSIS包的机器动态设置位置。 (两者都在Dev中工作,在Int中都不起作用)我也可以从Dev调用Int上的.EXE,这不是一个惊喜,因为.EXE从Int下拉到Dev。

为什么.EXE会在Dev环境而不是Int环境中运行?我们的系统管理员的环境是相同的。

1 个答案:

答案 0 :(得分:0)

对于有关人士,我有一个问题的答案。

问题在于将EXE从Dev服务器移动到Int服务器的文件传输过程。这个过程是通过一个Robocopy脚本处理的(我仍然无法获得参数),这似乎导致了这个问题。

我不是百分之百确定导致问题的原因,但是脚本没有复制到程序集而没有程序集,服务器认为EXE是一个16位应用程序。

诊断问题的有用链接:

运行this powershell命令脚本以确定每台服务器上应用程序的“位数”。