ntdll.dll是windows xp和windows vista的标准配置吗?

时间:2009-11-25 19:55:19

标签: java windows com java-native-interface

ntdll.dll是Windows XP和Windows Vista的标准配置吗?我知道我的Windows XP机器上有它,但我不确定这是每台机器的标准配置。

我很好奇的原因是NTQuerySystemInformation功能可以获得Windows XP和/或Windows Vista系统的CPU使用率。

3 个答案:

答案 0 :(得分:3)

是的,但您要使用的功能可能不会。根据MSDN,NTQuerySystemInformation可能会在未来版本的Windows中被更改或不可用。您应该使用GetSystemInfo代替,它位于Kernel32.dll中,可从Windows 2000及更高版本获得。

在使用之前,您确实应该学会检查有关API调用的MSDN。并且,如果你这样做,你应该学会倾听,因为一旦它被弃用,MS可以免费将其从更新中的未来NTDLL文件中删除(尽管它们通常不会这样做)。选择在有可行且受支持的替代方案时故意使用已弃用的功能总是一个坏主意。

答案 1 :(得分:2)

为什么要使用未记录的ntdll.dll函数?您可以使用WMI来获取CPU使用率。例如,使用Win32_Process应该可以提供帮助。

答案 2 :(得分:-1)

根据以下网站,“这是Windows所需的文件,删除该文件会导致Windows出错。”话虽如此,我认为假设所有机器都有它是安全的。

http://www.computerhope.com/issues/ch000960.htm