判断系统中.NET FrameWork已安装版本的方法很多,比如检查C:\Windows\Microsoft.NET\Framework\下的子目录,但是子目录往往是包含版本号,比如v2.0.50727、v4.0.30319,当然网上也有一些是判断注册表中的HKEY_LOCAL_MACHINE\Software\Microsoft\.NETFramework下的子目录,这个和判断系统文件一样下面都显示的版本号,
经过发现,安装了.NET FrameWork会在HKEY_LOCAL_MACHINE\Software\Microsoft\NET Framework Setup\NDP\下有记录,比如V4.0 V3.5
function CheckNetFrameWork(sVersion:string): Boolean;
var ff:boolean;
sqlstr,DBServerName,DBName,DBID,DBPwd:string;
reg:TRegistry;
begin
Result := False;
try
Reg:= TRegistry.Create;
try
Reg.RootKey := HKEY_LOCAL_MACHINE ;
if
Reg.OpenKeyReadOnly(‘\Software\Microsoft\NET Framework Setup\NDP\‘+sVersion)
then
begin
Result := True;
Reg.CloseKey;
end
finally
Reg.Free;
end;
except on e:exception
do
ShowMessage(E.message);
end;
end;
调用的地方传入版本号即可
if CheckNetFrameWork(‘v4‘) or CheckNetFrameWork(‘v4.0‘) then
begin
ShowMessage(‘.NET FrameWork 4.0已安装‘);
end;