windows - 您可以在 Launch4j 中设置 WindowTitle 其中 headerType==console 吗?

标签 windows window exe launch4j

我有一个 launch4J 配置,其中 headerType=console。

控制台可以很好地显示所有控制台输出。但该控制台窗口的标题始终是可执行启动器的完整路径。有没有办法设置该窗口的标题,如果可以的话如何设置?

例如,如果我使用

创建批处理文件
start "This is my Window Title" mylauncher.exe

然后我将得到一个控制台窗口,其标题为这是我的窗口标题。如何配置 Launch4j 以便不需要批处理文件?

最佳答案

据我所知,launch4j 中没有设置可以做到这一点。有一个 windowTitle 选项,但文档说它仅适用于 GUI。

相反,我认为你有几个选择。我假设您仅使用 Windows,因为您使用的是批处理和 exe 文件。

选项:

  1. 修改launch4j的源以添加对Win32 API函数的调用SetConsoleTitle 。您本质上需要重新编译 consolehead 部分,然后重建可执行文件。他们使用 Dev-Cpp 进行编译。

    有一个类似的项目名为WinRun4J它有一个配置控制台标题的选项,它使用了这种方法。也许 launch4j 所有者可以根据要求添加此功能,但您自己添加它也不会太难。我之前修改了 launch4j 源代码来修复错误,这非常简单。

  2. 编写 JNI 库以从 Java 代码中调用相同的 Win32 函数。请参阅this post .

  3. 不要编写自己的 JNI dll,而是使用 JNA library从 Java 调用 SetConsoleTitle。有关示例用法,请参阅 #2 中同一链接中的答案。

关于windows - 您可以在 Launch4j 中设置 WindowTitle 其中 headerType==console 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26188883/

相关文章:

c# - 防止窗口显示在 alt 选项卡中

window - 如何在 Python 3k 中获取窗口或全屏截图? (不含 PIL)

windows - Windows 上的 Node.js 和文件系统 - EBUSY 错误

node.js - install.js cmd 挂起 - 无法在 Windows 上安装 Electron js npm

c++ - Windows 版本识别 [C/C++]

python - 如何使用 PyWin32 从 exe 文件加载嵌入式图标?

python - 如何将我的 Python 3 应用程序编译为 .exe?

c++ - 在 directx-11 中使用指定的字体

macos - SwiftUI:窗口关闭时运行代码 macOS

qt - 使qt的独立可执行文件