这是一系列至少两个密切相关但不同的问题的一部分。我希望我通过单独询问他们来做正确的事情。
我试图让我的 Visual C++ 2008 应用程序在没有 C 运行时库的情况下工作。这是一个 Win32 GUI 应用程序,没有 MFC 或其他花哨的东西,只是普通的 Windows API。
所以我将 Project Properties -> Configuration -> C/C++ -> Advanced -> Omit Default Library Names 设置为 Yes (compiler flag /Zl
) 并重建。
然后链接器抱怨一个未解决的 external _WinMainCRTStartup
。很公平,我可以告诉链接器使用不同的入口点,比如MyStartup
. 根据我在网上收集的信息,_WinMainCRTStartup
做了一些初始化工作,我可能想做MyStartup
其中的一部分。
所以我的问题是:执行了哪些功能_WinMainCRTStartup
,如果我不使用 CRT,我可以省略哪些功能?
如果您对这些东西很了解,请也看看我的另一个问题。谢谢!
旁白:为什么我首先要这样做?
- 我的应用程序没有明确使用任何 CRT 函数。
- 我喜欢精益求精的应用程序。
- 它会教给我一些新的东西。