在windows中创建后台进程

在windows中创建后台进程,windows,visual-c++,process,background-process,Windows,Visual C++,Process,Background Process,我如何使一个过程以编程的方式进入后台 我想要的是用户双击进程的可执行文件,然后它就进入后台。。。并且在执行时不打开窗口 VisualC++中的任何代码片段都会有帮助:这可能有帮助: 你考虑过创建一个替代的吗?它们专门设计为在后台运行而不显示UI 否则,只是。我知道这是旧的,但我想当人们通过搜索找到它时,我会发布一些东西 虽然我喜欢科迪·格雷关于设计正确性的回答,但有时你别无选择 如果您想启动一个程序而不跳转到新窗口,它会出现在背景中,或者最小化或根本不创建窗口,请尝试查看和函数。参数nShow

我如何使一个过程以编程的方式进入后台

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


VisualC++中的任何代码片段都会有帮助:

这可能有帮助:

你考虑过创建一个替代的吗?它们专门设计为在后台运行而不显示UI


否则,只是。

我知道这是旧的,但我想当人们通过搜索找到它时,我会发布一些东西

虽然我喜欢科迪·格雷关于设计正确性的回答,但有时你别无选择

如果您想启动一个程序而不跳转到新窗口,它会出现在背景中,或者最小化或根本不创建窗口,请尝试查看和函数。参数nShowCmd或nShow为您提供了以下选项:

SW_皮

隐藏窗口并激活另一个窗口

SW_showminoactive

将窗口显示为最小化窗口。活动窗口将保持活动状态


正如文档所述,SW_HIDE创建了一个进程,运行您提供给它的可执行文件,但如果该程序通常会创建一个窗口,则不会出现任何窗口。

我尝试了这种方法,效果很好: 创建一个控制台应用程序,并像其他控制台应用程序一样在sub-main中编写代码。 现在,将项目属性中的应用程序类型从控制台应用程序更改为windows窗体应用程序
就是这样

为了回答这个问题,了解您使用的是什么框架很重要:MFC、.NET还是本机Win32 API?如果是superuser,这个答案将适用。这不是以编程方式。他当然可以以编程方式创建Windows服务,或者安排将进程置于后台。另一方面,他也可以通过编程简单地安排使用START命令。您可以通过编程方式定义您认为合适的方式,但有时,最简单的解决方案使用现有的命令基础结构适合,而不管您选择如何通过编程方式解析。