![]() |
1
9
我想我在这个问题上有点晚了,但不管怎样,我还是会为有同样问题的人写一些东西。 我的问题与此类似,我希望我的应用程序是一个GUI应用程序,但是执行的进程应该在后台运行,而不附加任何交互控制台窗口。 我用generateConsolectLevel()解决了这个问题。棘手的部分是,文档并没有真正清楚地说明如何使用它以及它的缺陷。 我的解决方案基于所描述的内容 here .但这也不能真正解释所有的细节,所以这里是如何让它工作的细节。
要创建helper.exe,请使用create_no_窗口创建它,然后创建新的_process_组。 当创建子进程时,不使用标志(0)创建它,这意味着它将从其父进程派生控制台。如果不这样做,将导致它忽略该事件。 每一步都这样做是非常重要的。我尝试过各种不同的组合,但这种组合是唯一有效的。不能发送ctrl_c事件。它将返回成功,但将被进程忽略。ctrl-break是唯一有效的。并不重要,因为它们最终都会调用exitprocess()。 您也不能使用子进程ID的进程组ID直接调用GenerateConnectLevelent(),从而允许帮助进程继续活动。这也会失败。 我花了一整天的时间来做这个工作。这个解决方案对我有用,但是如果有人需要添加什么,请做。我上网发现很多人都有类似的问题,但没有明确的解决办法。generateConsolectLevelent()的工作方式也有点奇怪,因此如果有人知道更多关于它的详细信息,请分享。 |
![]() |
2
8
正如Shakta所说
|
![]() |
PHPLover · “支持PHP扩展或功能的端口”实际上是什么意思? 11 月前 |