Respondo tardíamente (más que responder, es rescatar un tema de la tumba jeje
) por si le sirve a alguien:
Hay que reemplazar
Código Delphi
[-]v_reg.OpenKey('\SOFTWARE\Firebird Project\Firebird Server\Instances', False);
Por:
Código Delphi
[-]v_reg.OpenKeyReadOnly('\SOFTWARE\Firebird Project\Firebird Server\Instances');
Y voilá !!! , ya se puede leer la clave del registro indistintamente en Windows XP, Windows Vista, Windows 7 y Windows 8.
De hecho tengo preparada una función que la utiliza, para leer la ubicación de Firebird y poder ejecutar utilidades como Gbak:
Código Delphi
[-]Function Trayecto_Firebird: String;
Begin
Result := '';
With TRegistry.Create Do
Try
RootKey := HKEY_LOCAL_MACHINE;
If OpenKeyReadOnly('\SOFTWARE\Firebird Project\Firebird Server\Instances') Then Result := ReadString('DefaultInstance');
Finally
Free;
End;
End;
Saludos !