什么是Platform SDK

文章介绍了如何使用PlatformSDK为Visual C++ 6.0更新API函数及常量声明,以便支持Windows 2000、XP等后续操作系统。并提供了安装步骤及注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

vc6推出时,是98年,windows2000,windowsXP都还没有推出。
所以VC6的头文件中仅仅包含win98/NT的API、常量声明。

在新的系统推出后,windows2000/xp都增添了一些新的API函数、常量定义。
于是,你就需要安装platform sdk,它会安装一些新的头文件,lib库到你的VC里面,
这里面包含了新操作系统的新API函数、常量的声明。

装了platform SDK,在VC6里面就可以调用新的API函数了。

理论上讲,如果你在你的VC代码里手工的添加新的API声明、常量声明,也可以调用新系统的API,
但很花时间,一般很少有人这么做。

目前常见的psdk包括 win2000 psdk, winxp psdk, windows server2003 platform sdk.等等。
一般来讲,装个winxp psdk就够用了,windows2000下的新函数也都包含了。

同样VC7(.net 2003) VC8(.net2005)也有着和VC6一样的问题,所以Platform SDK也可用于它们。

需要注意的是,从2003年2月微软发布最后一个for VC6的platform SDK之后,就再也没有针对VC6发布platform SDK了。
所以,如果安装了2003年2月之后发布的platform SDK,并且设置生效之后,会导致VC6的Debug模式无法编译。原因是,
这些新的platform SDK提供的Debug版的lib文件添加了新的功能,不再兼容vc6了。要想解决这个问题,只能下载2003年或2003年以前的platform SDK。

这里是最后一版支持VC6的SDK的下载地址:
   http://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdk-full.htm


Platform SDK安装完成后,从【开始菜单】 【所有程序】,【Windows Platform SDK Febrary 2003】点击【Register PSDK directories with visual studio】,注册一下。再打开VC ,就好了。


本文来自优快云博客,转载请标明出处:http://blog.youkuaiyun.com/qiqi5521/archive/2009/04/03/4047224.aspx

### Platform SDK 的概述及其使用指南 Platform SDK 是 Microsoft 提供的一套开发工具包,旨在帮助开发者构建基于 Windows 平台的应用程序。它包含了头文件、库文件以及各种工具,支持多种编程语言和框架。 以下是关于 Platform SDK 的一些核心概念和技术细节: #### 1. **安装与配置** 为了使用 Platform SDK 开发应用程序,需要先下载并安装相应的版本。Microsoft 官方提供了多个版本的 SDK 下载链接[^1]。安装完成后,需确保环境变量设置正确以便编译器能够找到所需的头文件和库文件。 ```bash set INCLUDE=C:\Program Files\Microsoft SDKs\Windows\v7.0A\Include;%INCLUDE% set LIB=C:\Program Files\Microsoft SDKs\Windows\v7.0A\Lib;%LIB% ``` 以上命令用于更新 `INCLUDE` 和 `LIB` 路径,使 Visual Studio 或其他 IDE 正确识别 SDK 文件位置[^2]。 --- #### 2. **主要功能模块** Platform SDK 主要由以下几个部分组成: - **Win32 API**: 支持访问操作系统的核心服务,如文件操作、进程管理等。 - **COM/ActiveX 控件**: 实现组件对象模型的功能扩展。 - **DirectX**: 集成图形处理单元 (GPU) 加速的游戏和其他多媒体应用开发能力。 - **网络协议栈**: 包括 WinSock 库在内的通信接口实现跨设备数据交换。 这些模块共同构成了完整的开发生态系统,适用于不同类型的项目需求[^3]。 --- #### 3. **常见问题及解决方法** ##### a. 缺少特定 DLL 导致运行失败 如果遇到错误提示缺少某些动态链接库 (.dll),可以尝试重新部署对应版本的 Redistributable Package 来修复缺失项[^4]。 ##### b. 不兼容的新旧版冲突 当升级到更高版本的 Platform SDK 后发现原有代码无法正常工作时,建议仔细阅读发行说明文档中的变更日志,并调整源码以适应新的标准定义[^5]。 --- #### 4. **示例代码展示** 下面是一个简单的 C++ 程序片段演示如何利用 Platform SDK 创建窗口界面: ```cpp #include <windows.h> LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM); int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { const char CLASS_NAME[] = "SampleWindowClass"; WNDCLASS wc = { }; wc.lpfnWndProc = WndProc; wc.hInstance = hInstance; wc.lpszClassName = CLASS_NAME; RegisterClass(&wc); HWND hwnd = CreateWindowEx( 0, CLASS_NAME, "Learn to Program Windows", WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, hInstance, NULL ); ShowWindow(hwnd, nCmdShow); MSG msg = {}; while(GetMessage(&msg, NULL, 0, 0)) { TranslateMessage(&msg); DispatchMessage(&msg); } return 0; } LRESULT CALLBACK WndProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam){ switch(uMsg){ case WM_DESTROY: PostQuitMessage(0); return 0; } return DefWindowProc(hwnd,uMsg,wParam,lParam); } ``` 此例子展示了通过调用 WinAPI 函数创建基本 GUI 组件的过程[^6]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值