【问题标题】:run a program from a windows service从 Windows 服务运行程序
【发布时间】:2010-07-09 17:25:17
【问题描述】:

我有一个我想从 Windows 服务调用的程序。

xsftp.StartInfo = New ProcessStartInfo("c:\stage\psftp.exe", "testuser@X.X.X.X -b c:\stage\script.bat -pw XXX")
xsftp.Start()

如果我在控制台应用程序中编写相同的代码可以正常工作,但是从 Windows 服务它不会运行,我看到 psftp 正在任务管理器中启动,但它不会做任何事情..

有什么想法吗? 谢谢! 斯林

【问题讨论】:

  • 这是什么版本的 windows?
  • 有什么帮助吗?我还在努力寻找答案..

标签: windows vb.net windows-services external


【解决方案1】:

不确定你是否还需要这个.. 但你需要将 UseShellExecute 设置为 false:

 p.StartInfo.UseShellExecute = False

我遇到了同样的问题,无论如何都找不到答案,但我查看了我的旧代码并找到了答案:)

祝你好运

【讨论】:

    【解决方案2】:

    你如何确定它没有做任何事情?如果您正在寻找 GUI,它可能在其他用户下运行,而无法访问您的桌面。

    【讨论】:

    • script.bat 有一个 ftp 命令将文件放到服务器上。我在服务器上看不到任何文件。最后一个命令是“再见”,所以从技术上讲,它应该在执行后退出。 -- 这就是我从控制台应用程序运行相同代码时发生的情况。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-13
    • 1970-01-01
    相关资源
    最近更新 更多