使用 scons-qt4 插件时如何隐藏 Windows 上的控制台窗口?
当我使用 scons-qt4 插件在 Windows 上构建时,我的应用程序始终打开一个控制台窗口,即使它有自己的窗口。使用 QMake,您可以通过添加 CONFIG += console 或类似的内容来强制应用程序执行相同的操作,但默认行为是抑制它。 QMake 可以处理它 - 我相信 scons 也可以。
到目前为止,我看到解决这个问题的唯一方法是在 int main() 周围使用#ifdef:
#ifdef WIN32
int WinMain (int _argc, char **_argv)
#else
int main (int _argc, char **_argv)
#endif
但这太可恶了!
When I'm building on Windows with scons-qt4 plugin, my application always opens a console window, even though it has its own windows. With QMake, you could force application to do the same by adding CONFIG += console or something similar, but the default behaviour is to suppress it. QMake can handle it - I'm sure scons can, too.
The only way I see so far to solve this problem would be to use #ifdef around int main():
#ifdef WIN32
int WinMain (int _argc, char **_argv)
#else
int main (int _argc, char **_argv)
#endif
But that's just abominable!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
所以,看来我的问题几乎已经得到解答 这里。现在,应用于 scons,这两行代码为我做到了:
另外,衷心感谢 [scons-users] 邮件列表上的人们。 David Van Maren 特别指出:
这可能是解决问题的另一种方式,例如当使用GCC + MinGW以外的其他工具编译程序时。
So, it seems, my question was almost already answered here. Now, applied to scons, these two lines did it for me:
Also, kind thanks to the folks on the [scons-users] mailing list. In particular, David Van Maren pointed out that:
This may be another way to solve the problem, for example, when program is compiled with other tools than GCC + MinGW.