65.9K
CodeProject 正在变化。 阅读更多。
Home

使用免费的 Visual C++ 2005 Express Edition 开发 Win32 应用程序

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.46/5 (13投票s)

2006 年 9 月 23 日

CPOL

4分钟阅读

viewsIcon

210771

介绍如何设置 Visual C++ 2005 Express 来构建 Win32 应用程序。

引言

Microsoft 发布了 Visual C++ 2005 Express Edition,可以免费下载和使用,甚至可以用于开发商业应用程序。但是,如果您想开发经典的 32 位原生 Windows 应用程序(即非 .NET),例如使用 wxWidgets 框架的应用程序,您需要进行一些配置更改。

本文中的信息并非全新,大部分可以通过 Google 搜索或点击 此链接找到。很多信息也可以在 Microsoft 论坛上找到,但我决定创建这篇文章,原因如下:

  1. 为方便参考而存储这些信息,以确保其可访问性。
  2. 将所有信息集中在一处,节省大家的时间(我不得不搜索零散的信息)。
  3. 提供一个可以添加有用信息的场所(Microsoft 论坛似乎已不再运行,我无法在上面添加注释,而且一些人也在这个问题上遇到困难。)
  4. 鼓励开发者发布他们的努力成果,并帮助他们找到一些优秀的免费工具来入门。

你需要的东西

Visual C++ 2005 Express

访问 Microsoft 网站并下载“Visual C++ 2005 Express”。您很可能需要下载名为 VC.iso (473,720 KB) 的文件。将其刻录到 CD 或使用 VCdControlTool 或 DiskPrivate 等免费工具访问其内容。使用默认位置进行安装。

Platform SDK

从 Microsoft 网站下载 Platform SDK。我下载了 PSDK_x86.exe (1.26 MB)。搜索 Platform SDK,将找到“Microsoft ® Windows Server® 2003 R2 Platform SDK Web Install”(见此处链接)。如果您向下滚动,您会看到 PSDK_x86.exe。这是您唯一需要的部分。

使用默认推荐设置安装 Platform SDK。我没有运行批处理文件将其注册到 Visual C++(它会将其添加到开始菜单,但运行它似乎没有什么作用,所以我通过开始菜单中的选项将其注销了)。

如何让 Visual Studio 与 Platform SDK 配合使用

这大部分基于官方说明,可以在 此处找到。

包含目录

如果不解决此问题,您会遇到无法包含 windows.h 等错误。启动 Visual Studio,在“选项”对话框的“项目和解决方案”部分菜单下,将路径添加到相应的子目录:

  • 可执行文件:C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Bin
  • 包含文件:C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Include
  • 库文件:C:\Program Files\Microsoft Platform SDK for Windows Server 2003 R2\Lib

请务必检查 Visual Studio 是否记住了这些路径!关闭视图,然后重新进入,确保它记住了它们!另外,请使用 Windows 资源管理器验证这些目录,因为 SDK 可能安装到不同的目录。目录实际上可能是:

  • 可执行文件:C:\Program Files\Microsoft Platform SDK\Bin
  • 包含文件:C:\Program Files\Microsoft Platform SDK\Include
  • 库文件:C:\Program Files\Microsoft Platform SDK\Lib

这是许多人的主要障碍。在添加目录之前请务必验证!

默认链接库

如果不解决此问题,您将收到关于 Windows API 函数的未解析外部链接错误。关闭 Visual Studio,然后编辑 C:\Program Files\Microsoft Visual Studio 8\VC\VCProjectDefaults\corewin_express.vsprops 并更改:

AdditionalDependencies="kernel32.lib"

to

AdditionalDependencies="kernel32.lib user32.lib gdi32.lib winspool.lib
    comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib"

启用 Win32 应用程序

编辑文件 C:\Program Files\Microsoft Visual Studio 8\VC\VCWizards\AppWiz\Generic\Application\html\1033\AppSettings.htm。使用记事本或任何纯文本编辑器,在以下行(以及其他任何您想要修改的 disabled = true 行)前面加上 // (作为注释)。

WIN_APP.disabled = true;
WIN_APP_LABEL.disabled = true;
DLL_APP.disabled = true; 
DLL_APP_LABEL.disabled = true;

但是...

这样就完成了!但是...

您无法获得什么

MFC 呢?

不包含。对于新的开发工作,您可以使用 wxWidgets 作为替代品。如果您想要 MFC,可能需要付费。

ATL / WTL 呢?

不包含。但是,正如在另一个 CodeProject 文章 Using WTL with Visual C++ 2005 Express Edition 中所述,您似乎可以获得 ATL / WTL。

免费资源编辑器呢?

Studio Express 不允许您编辑资源文件。根据上述文章,您可以尝试:

  1. 这里是 免费资源编辑器列表(看起来 Watcom C++ 编译器有一个独立的资源编辑器应用程序)。
  2. WEditRes
  3. 或者(对于一个看起来也允许您编辑资源的 IDE):RadASM© Win32 汇编 IDE,支持 masm/tasm/fasm/nasm/goasm/hla
  4. wxWidgets 也有某种使用 XML 定义资源的系统,并且有免费的 RAD 应用程序,但我还没有深入研究。

安装程序呢?

如果您希望为您的应用程序创建安装/卸载程序,我建议您尝试免费的 Inno 编译器。即使是商业应用程序也免费且易于使用。

其他与 Visual Studio 集成的编译器呢?

Visual Studio Express 不允许您安装其他与 Visual Studio Express 直接集成的编译器,如 Intel Fortran。但是,其中一些提供了自己的 IDE。

最后评论

如果您知道其他真正免费的软件可能在这方面很有用,请发表评论。

历史

  • 2006 年 9 月 23 日:首次发布
© . All rights reserved.