是否可以
在Windows中创建一个GUI程序,该程序的入口点在"main(("中?我该怎么做?
我这样做的用途是我想要一个跨平台的应用程序,有一个统一的入口点。
- 使用
main()
编写应用程序,以及您在WinMain
中使用的所有 GUI 调用。 这将创建一个同时具有 GUI 和控制台窗口的应用程序。 - 使用 Windows SDK 工具
editbin /SUBSYSTEM:WINDOWS appname.exe
更改 PE 标头中的子系统标志,因此 Windows 不会自动创建控制台窗口。 - 如果要具有调试消息等的工作
stdout
,可以使用freopen
将stdout
定向到文件,也可以在决定需要控制台窗口时(例如,发生错误后(AllocConsole
。
顺便说一句:这个线程表明,如果DMD编译器找到两者,它无论如何都会更喜欢main()
而不是WinMain()
。