Delphi Xe, Win7x64
如何检测不完整的Windows版本N或K (winxpsp3 - win7x64)?没有IE, Wmp.
的例子:
Function isWinKNedition:bool;
begin
result:=?????
end;
...
procedure TForm1.FormCreate(Sender: TObject);
begin
if isWinKNedition then begin showmessage('This program can work only on full versions OS Windows');Halt;end;
end;
根据MSDN,您可以使用GetProductInfo或WMI Win32_OperatingSystem类(参见OperatingSystemSKU描述)来检测"N"版本。请注意,Windows XP不支持这两种方法(需要Vista或以上版本)
要检测Windows XP"K"版本,您可以检查注册表项,参见http://support.microsoft.com/kb/922474(更改Windows注册表部分)。
尝试使用GetVersionEx
WinApi,它提供有关操作系统的版本信息,包括ServicePack信息。
查看这篇文章