WPRFLAG和_WINMAIN_宏定义在哪里?

4
你好,以下是您需要翻译的内容:

你知道,

有一些代码像这样:

#ifdef WPRFLAG

并且

#ifdef _WINMAIN_

ctrexe.c中(我使用的是vs2010),这些宏定义确定了从入口点调用哪个函数。但是,即使在项目设置的宏设置中,我也找不到这些宏。这些宏到底是在哪里定义的?
2个回答

3

VS项目->配置属性->链接器->系统->子系统:

  1. 控制台应用程序 (/SUBSYSTEM:CONSOLE)
  2. Windows应用程序 (/SUBSYSTEM:WINDOWS)

/SUBSYSTEM:WINDOWS 使程序运行在 _WINMAIN_ 中。


2

WPRFLAG 在许多宽字符版本的源文件中被定义,例如 CRT 源代码文件夹下的 wcrt0.c。而 _WINMAIN_ 则在 Windows 版本的 CRT 源文件(如 Wincrt0.c 和 wWincrt0.c)中被定义。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接