【发布时间】:2016-03-24 16:21:40
【问题描述】:
我正在编写一个允许 DBA 远程运行 SSIS 包的工具。该应用程序是一个 XBAP,并已部署到 SQL Server,SSIS 包位于同一服务器上。我通过在服务器上远程运行 DTExec(我打开服务器 DTExec 实用程序,而不是本地版本)来实现 SSIS 包的远程调用,该服务器使用 Process.Start 作为另一个用户运行。
这是我遇到的问题。从我的桌面运行应用程序(从服务器)时,它工作得非常好。启动 DTExec 并执行 SSIS 包。但是,当我转到同一网络中的另一台计算机时,我收到错误
The application was unable to start correctly (0xc0000143). Click OK to close the application.
这发生在多台计算机上,但由于某种原因在我的计算机上有效。
两台计算机之间的唯一区别是我的计算机上有一个 SQL Server 开发人员版本(这意味着我有一个本地 DTExec 工具 - 但是我没有调用这个工具,路径是到 \\server\Microsoft SQL Server...\DTExec.exe)。
有人知道这里发生了什么吗?
【问题讨论】:
-
请正确使用标签将您的问题发送到正确的组。这个问题与 SSIS 有关,但与 sql-server 和 c# 无关。
-
哦,好吧,但我正在使用 Process.Start 这是一个 C# 命令,不是吗?并且应用程序托管在 sql-server 上,这与它无关?此外,DTExec 实用程序是特定于 SQLServer...
-
您可以使用 C# 或命令行或其他任何东西,但问题与 DTExec 相关,而不是您的 C# 代码。看起来没有必要了解 C# 来回答您的问题。甚至可能是 sql server 安装或网络,但不是 c#
-
解决了这个问题,这是因为我试图使用 Process.Start 的 StartInfo 以另一个用户身份运行该进程。唯一更改的代码是 C#。虽然我感谢您尝试帮助社区,但排除显然是手头问题的一部分的可能性无助于解决问题。