Haxe程序隐藏控制台

时间:2015-07-30 18:48:36

标签: haxe openfl

我正在尝试在运行Haxe应用程序时隐藏控制台。

我使用FlashDevelop将Haxe编译成hxcpp,这是我的 project.xml

<?xml version="1.0" encoding="utf-8"?>
<project>

    <!-- metadata, make sure 'package' is at least 3 segments (ie. com.mycompany.myproject) -->
    <meta title="haxeGame" package="haxeGame" version="1.0.0" company="xiggie" />

    <!-- output -->
    <app main="Main" file="haxeGame" path="bin" />

    <window width="800" height="480" fps="60" background="0x000000" orientation="landscape" resizable="false" borderless="true" />
    <window vsync="true" antialiasing="6" />

    <!-- classpath, haxe libs -->
    <classpath name="src" />
    <haxelib name="openfl" />
    <haxelib name="actuate" />

    <!-- assets -->
    <icon path="assets/texture.jpg" />
    <assets path="assets" rename="assets" />

    <!-- optimize output
    <haxeflag name="-dce full" /> -->

    <!-- Windows app: hide console -->
    <setenv name="no_console" value="1" />
    <flag value="subsystem:windows" />

</project>

我尝试了所有这些:

<haxeflag name="-D no_console" />
<haxedef name="no_console" />
<setenv name="no_console" value="1" />

是否可以从发布应用中删除控制台?

1 个答案:

答案 0 :(得分:1)

默认情况下应隐藏控制台。要使其显示,需要添加

<setenv name="SHOW_CONSOLE" />

但是,当使用 mingw 而不是 msvc 作为编译器时,hxcpp附带的工具链配置当前不会将标志传递给链接器,从而避免创建控制台窗口。

要解决此问题,请在haxe安装中搜索 mingw-toolchain.xml ,并将 -mwindows 标志添加到链接器配置中。

我为此https://github.com/HaxeFoundation/hxcpp/pull/286

创建了拉取请求