频道分类

Delphi 根据注册表信息判断程序是否安装

作者:admin 来源: 日期:2020/10/12 8:31:07 人气: 标签:

 
function IsAppmethodInstalled( SVers: String ): Boolean;
var
  Vers: Integer;
  i: Integer;
  DefApp: String;
begin
  // check if Delphi is installed
  // 50 = Delphi5, 60 = Delphi 6 etc,
  // can check for ANY of multiple versions of delphi if separated by spaces
  i := Pos(' ', SVers);
  if i > 0 then
  begin
    result := IsAppmethodInstalled( Copy(SVers, i + 1, Length(SVers)) );
    if result then Exit;
    SVers := Copy(SVers, 1, i-1);
  end;
  Vers := StrToInt(SVers);
  case Vers of
    200: result := RegQueryStringValue( HKCU, 'SOFTWARE\Embarcadero\BDS\14.0\Personalities', '', DefApp ); // XE6/Appmethod 1.14
  else
    result := False;
  end;
  if result then
  begin
    result := DefApp = 'Appmethod';
  end;
end;