【问题标题】:Background process in CC中的后台进程
【发布时间】:2011-12-19 09:38:13
【问题描述】:

如何使进程在 C 中成为后台? 我知道如何在 UNIX 中做到这一点,但如何在 Windows 中做到这一点?

我想要的是用户双击进程可执行文件,它只是进入后台......并且在执行时不打开窗口。

我不是在寻找完整的解决方案,只是一个参考。 谢谢!

【问题讨论】:

    标签: c windows process


    【解决方案1】:

    正如@ChikaneHimeko 所说,创建一个没有窗口的 Windows 应用程序:

    #include <windows.h>
    
    int APIENTRY WinMain(HINSTANCE hInstance,
                         HINSTANCE hPrevInstance,
                         LPSTR     lpCmdLine,
                         int       nCmdShow)
    {
        Sleep(5000); /* Just here to illustrate not visible but running */
    
        return 0;
    }
    

    【讨论】:

      【解决方案2】:

      只需创建一个不显示窗口的 Windows 应用程序。

      【讨论】:

        【解决方案3】:

        look at this msdn linkCreateProcess函数

        【讨论】:

          【解决方案4】:

          也许你想要的是创建一个服务......

          http://support.microsoft.com/kb/251192

          【讨论】:

          • 不太可能。在 99% 的情况下,人们认为他们需要创建服务,但他们错了。与 Windows 服务相关的限制有很多,而且它们通常最终会咬那些创建服务的人,因为他们希望某些东西在没有 UI 的情况下运行。不创建/显示窗口的标准 Windows 应用程序几乎总是一种更好、更简单的方法。
          • 也许,也许……我只是强调另一个选项。
          猜你喜欢
          • 2022-09-26
          • 1970-01-01
          • 1970-01-01
          • 2012-05-06
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多