Delphi - объектно-ориентированный язык программирования, разработанный компанией Borland в 1995 году. Он основан на языке программирования Pascal, но имеет более расширенные возможности и добавлены новые функции.
Delphi является интегрированной средой разработки (IDE), которая позволяет разрабатывать программное обеспечение для различных платформ, включая Windows, macOS, Android и iOS. Delphi достигает многоплатформенности с помощью...
{ **** UBPFD *********** by delphibase.endimus.com **** >> Проверка наличия .NET Framework и определение его версии Функция возвращает номер последней установленной версии .NET Framework на компьютере, или пустую строку, если платформа .NET не установлена, либо установлена криво. Зависимости: Registry, SysUtils Автор: Dimka Maslov, mainbox@endimus.com, ICQ:148442121, Санкт-Петербург Copyright: Dimka Maslov Дата: 19 января 2004 г. ***************************************************** } functionDotNetVersion: string
; var
R: TRegistry; L: TStringList; S: string
; i, MaxIndex, N, Code: Integer; V, MaxVersion: Double; const
RegKey = 'SoftwareMicrosoft.NETFrameworkPolicy'; begin
Result := ''; R := TRegistry.Create; try
R.RootKey := HKEY_LOCAL_MACHINE; if
R.KeyExists(RegKey) then
begin
R.OpenKeyReadOnly(RegKey); L := TStringList.Create; try
R.GetKeyNames(L); MaxVersion := -1.0; MaxIndex := -1; for
i := 0 to
L.Count - 1 do
begin
S := L[i]; if
UpCase(S[1]) = 'V' then
begin
Delete(S, 1, 1); Val(S, V, Code); if
(Code = 0) and
(V > MaxVersion) then
begin
MaxVersion := V; MaxIndex := i; end
; end
; end
; if
MaxIndex <> -1 then
begin
S := L[MaxIndex]; R.CloseKey; R.OpenKeyReadOnly(RegKey + '' + S); R.GetValueNames(L); MaxIndex := -1; for
i := 0 to
L.Count - 1 do
begin
Val(L[i], N, Code); if
(Code = 0) and
(N > MaxIndex) then
MaxIndex := N; end
; Result := S; Delete(Result, 1, 1); if
MaxIndex <> -1 then
Result := Result + '.' + IntToStr(MaxIndex); end
; finally
L.Free; end
; end
; finally
R.Free; end
; end
;