从GUI文件资源管理器执行程序,不要生成终端。

问题描述 投票:1回答:1

我正在写一个程序,打开一个窗口并在上面显示一些东西。但是,如果我运行它就会产生一个终端窗口。但是,如果通过双击文件来运行,我不希望有一个终端。我想保留一个控制终端的唯一情况是,如果它是通过以下方式运行的。./filename 有什么方法可以做到这一点吗?我是用sfml做GUI的。请注意,这应该工作在那里的操作系统,所以。这个 将不工作。

一个潜在的解决方案是我fork程序,然后杀死终端产生的进程,但我不知道这是否有效。

c++ terminal cross-platform sfml
1个回答
0
投票

如果你不直接点击可执行文件,而是使用一个批处理脚本,它运行。

editbin /SUBSYSTEM:WINDOWS <your_exe>

你不会得到一个控制台弹出。


0
投票

你所问的问题已经在SFML论坛上得到了多次解答。你可以查看 此处.这里的答案似乎是针对Windows的。长话短说:只要把子系统改成Windows,然后把它和sfml-main.lib连接起来就可以了。然而,这样做有点使它成为windows特有的。即使是开发部也没有给出一个很好的解释,说它已经在FAQs和Tutorials中得到了回答,但我找不到任何posttutorial。然而,这似乎是唯一可行的(有些是跨平台的)解决方案(也是我使用的)。希望能帮到你。

© www.soinside.com 2019 - 2024. All rights reserved.