【问题标题】:Starting another exe as child process启动另一个 exe 作为子进程
【发布时间】:2021-10-13 05:48:41
【问题描述】:

编程 - C# .Net

我想将控制台应用程序转换为找到解决方案的 Windows 服务 - 通过新服务项目触发控制台 exe。但是当我这样做时,控制台应用程序将作为新的任务进程启动。 用于启动控制台应用程序的代码片段

protected override void OnStart(string[] args)
    {
        string path = @"D:\ConsoleTest\bin\Debug\MyConsole.exe";
        Process.Start(path);

    } 

有什么方法可以将 MyConsole.exe 作为服务应用程序的子进程启动? 目前 MyConsole.exe 正在作为新的独立进程运行。

【问题讨论】:

  • 顺便说一句:有一个应用程序/一段代码可以作为控制台应用程序和 Windows 服务运行。
  • 您对子进程有什么期望?尝试使用 ProcessStartInfo 和 UseShellExecute = false 启动进程。

标签: c# winforms windows-services console-application


【解决方案1】:

不,你不能那样做,不同的 exe 是不同的进程,所以它们会作为独立的进程独立运行。

如果您想将控制台应用程序作为一个进程运行,您可以将控制台应用程序转换为 Windows 服务,或者通过实现 ServiceBase 将控制台应用程序作为服务运行。

注意:您可以在互联网上搜索如何将控制台应用程序作为窗口服务运行。

【讨论】:

    猜你喜欢
    • 2015-03-22
    • 1970-01-01
    • 2022-06-14
    • 2019-05-29
    • 2014-12-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多