我可以找出Windows 2000中是否没有WinAPI函数吗?

我可以找出Windows 2000中是否没有WinAPI函数吗?,winapi,windows-2000,Winapi,Windows 2000,MSDN通常只将Windows XP列为“受支持的最低客户端”,这可能是因为Windows 2000及更早版本已经到了生命周期的末尾。然而,我们的一些用户正在Windows 2000计算机上使用我们的软件,如果可以避免的话,我不想破坏这种兼容性。我是否可以找出Windows 2000中是否没有Windows API函数(不在该系统上测试每个函数)?MSDN通常也提到较旧的操作系统。见: 如果它没有提到windows 2000,您必须测试它,它很可能不可用。您可以使用较旧的编译器(例如Visua

MSDN通常只将Windows XP列为“受支持的最低客户端”,这可能是因为Windows 2000及更早版本已经到了生命周期的末尾。然而,我们的一些用户正在Windows 2000计算机上使用我们的软件,如果可以避免的话,我不想破坏这种兼容性。我是否可以找出Windows 2000中是否没有Windows API函数(不在该系统上测试每个函数)?

MSDN通常也提到较旧的操作系统。见:


如果它没有提到windows 2000,您必须测试它,它很可能不可用。您可以使用较旧的编译器(例如VisualStudio6)来查看其库中是否有可用的功能。如果它有此功能,那么Windows 2000也应该有此功能。

您可以使用Win 2000系统打开二进制文件,它将以红色显示缺少的功能。当然,如果您静态链接到它们,这可能就足够了-至少对初学者来说是简单、容易和高效的。

理论上,您可以定义NTDDI版本NTDDI\u WIN2K,如果您的程序依赖于较新的API,它将无法编译,但不幸的是,这并不总是有效的。

不幸的是,微软已经从最新MSDN中的“支持的操作系统”列表中删除了对XP之前的任何内容的引用。如果您仍然有MSDN的旧副本(我有MSDN6a),那么他们仍然会将真正的“支持的客户端”列表返回到Windows 9x。

在“Windows Server 2003 R2平台SDK”中的帮助中包含返回到Windows 95和Windows NT 3.1的平台信息。我最近下载了它,但目前在microsoft.com上找不到。我不知道这是一个暂时的小故障还是永远消失了


中的帮助可能与此类似,但我尚未查看它。

这不是真的。MSDN文档的加载将XP列为最小平台,但该功能存在于NT/2000上。这就是问题的关键所在@victorsavu3:MS从“受支持”列表中明确删除了2000,因为它不再受支持。该Windows版本可能支持该函数,但该版本本身不受支持。文档中有很多函数仍然将Win2K列为受支持的最低版本。因此,拥有一份10年历史的MSDN副本非常方便@Deanna,一旦我发现最可行的解决方案是什么,我计划接受一个答案。也就是说,一旦我检查了全部含义,arx’或Neil’s将被接受。您自己的回答也很有帮助,因为我确实有一个MSDN 6副本,但我认为Windows 2000支持的API函数比这里描述的多得多,因此基本上,我需要按照arx的建议获得Windows Server 2003 SP1平台SDK的支持,然后我会看到。