diff --git a/DarkModeApi.FMX.pas b/DarkModeApi.FMX.pas index 8d82dc6..5d194aa 100644 --- a/DarkModeApi.FMX.pas +++ b/DarkModeApi.FMX.pas @@ -50,17 +50,29 @@ end; procedure TFormHelper.SetWindowColorMode(IsDark: Boolean); begin - SetWindowColorModeFor(handle, IsDark); + try + SetWindowColorModeFor(handle, IsDark); + except + // + end; end; procedure TFormHelper.SetWindowColorModeAsSystem; begin - SetWindowColorModeAsSystemFor(Handle); + try + SetWindowColorModeAsSystemFor(Handle); + except + // + end; end; class function TFormHelper.SystemIsDarkMode: Boolean; begin - Result := IsDarkMode; + try + Result := IsDarkMode; + except + Result := False; + end; end; {$ELSE} diff --git a/DarkModeApi.pas b/DarkModeApi.pas index b6b3e0a..d848b9a 100644 --- a/DarkModeApi.pas +++ b/DarkModeApi.pas @@ -123,13 +123,17 @@ var LRegistry: TRegistry; begin Result := False; - LRegistry := TRegistry.Create; try - LRegistry.RootKey := HKEY_CURRENT_USER; - if LRegistry.OpenKeyReadOnly('\SOFTWARE\Microsoft\Windows\CurrentVersion\Themes\Personalize') then - Result := not LRegistry.ReadBool('AppsUseLightTheme'); - finally - LRegistry.Free; + LRegistry := TRegistry.Create; + try + LRegistry.RootKey := HKEY_CURRENT_USER; + if LRegistry.OpenKeyReadOnly('\SOFTWARE\Microsoft\Windows\CurrentVersion\Themes\Personalize') then + Result := not LRegistry.ReadBool('AppsUseLightTheme'); + finally + LRegistry.Free; + end; + except + Result := False; end; end;