0

我正在尝试在 Visual Studio 2010 中创建一个符合以下条件的 C++ 应用程序:

  1. 显示一个空窗口
  2. 尽可能小(例如,小于 100kb)
  3. 在 Windows XP 的全新空安装上运行(不需要任何运行时、库等)

基本上,我想摆脱运行时。我唯一需要的是调用 WinAPI 函数来显示一个窗口和 BitBlt 一些东西到它的表面。

可能吗?

4

2 回答 2

3

MSDN 文档有一个很好的 WinAPI“Hello, World!”的逐步示例。你只需要吃一点开菲尔就可以了;)

于 2012-01-19T12:25:39.150 回答
3

1/2: Visual Studio 可以生成一个基本模板,这正是您所需要的(显示一个空窗口)。用于File -> New -> New Project -> select 'Win32 Project' -> click 'Finish'创建项目。当静态链接到 C 运行时库时,Release\Win32 二进制文件为 81KB(更多内容见下文)。当然,添加代码可能会增加二进制文件的大小。您可能想查看优化设置甚至二进制压缩以最小化大小。由于防病毒软件经常误报,我不推荐后者。

3:您需要静态链接到C 运行时库。这可以在Configuration Properties -> C/C++ -> Code Generation -> Runtime Library(选择/MT发布和/MTd调试)下进行配置。这样做将允许您在没有Visual C++ 2010 可再发行包安装的情况下运行可执行文件。

请注意,使用 Visual Studio 2010 编译的二进制文件需要 Windows XP SP2 或更高版本。如果您需要针对 Windows XP 的 SP2 之前的版本,您可能希望检查此解决方法。

于 2012-01-19T12:41:26.800 回答