Delphi XE2是否删除了IsWinNT函数?

移植到XE2和我已经有了一个IsWinNT ,编译7和德尔福2009年,从来没有给我们任何guff之前。

我不确定这种功能的目的是什么,但它被移除或移动了吗?

什么是可比较的功能?


我的不好,它在虚拟树中。 对不起,我的球员-1。 房子免费+1


在Delphi 2009中,没有IsWinNT函数。 另外,没有像这样命名的Windows API函数。 很可能你会感到困惑:也许IsWinNT是你使用的一些第三方库的一部分?

无论如何,如果你只是针对Windows平台,那么你可以实现这个功能

function IsWinNT: boolean;
begin
  result := true;
end;

因为每个Windows版本(包括)XP都基于NT。


我不知道这样的功能,但是你可以使用这个代码

if Win32Platform = VER_PLATFORM_WIN32_NT then 

FYI Delphi XE2只能在基于WinNT的系统上运行


我无法在我的任何Delphi(D6,D2010,DXE2)中找到该功能。 我会像这样测试NT:

Win32Platform = VER_PLATFORM_WIN32_NT

这个测试在XE2上有点多余,因为它不再支持定位非NT版本的Windows。 我实际上并没有尝试最近在Win9x上运行XE2生成的可执行文件,所以我不知道它是否失败。

在XE2中,您现在可以使用TOSVersion 。 例如,要检查您是在Windows XP上运行还是在运行,只需执行以下操作:

if (TOSVersion.Platform=pfWindows) and (TOSVersion.Check(5, 1)) then
  ...
链接地址: http://www.djcxy.com/p/59881.html

上一篇: Did Delphi XE2 remove the IsWinNT function?

下一篇: Nested Class functions don't compile