rss LEGFRISSEBB TÉMÁK Csatlakozz új fórumunkhoz...

Firebird útvonal lekérdezése - Windows

Firebird SQL fórum.
berkesi33
Hozzászólások: 4
Csatlakozott: 2016.09.12. 12:53

Firebird útvonal lekérdezése - Windows

HozzászólásSzerző: berkesi33 » 2016.09.24. 08:36

Sziasztok,
hogyan lehet lekérdezni a Firebird telepítési útvonalat Delphiben, vagy C-ben?

gaborg
Hozzászólások: 18
Csatlakozott: 2016.08.04. 01:23

Re: Firebird útvonal lekérdezése - Windows

HozzászólásSzerző: gaborg » 2016.09.24. 10:41

A Firebird, vagy InterBase útvonal lekérdezéséhez a Registry-ben van lehetőség:

Delphi:

Kód: Egész kijelölése

const
   FB_RegKey = '\Software\Firebird Project\Firebird Server\Instances';
   FB_DefaultInstance = 'DefaultInstance';
   IB_RegKey = '\Software\Borland\InterBase\CurrentVersion';
   IB_RootDir = 'RootDirectory';
   Regroot = 'HKEY_LOCAL_MACHINE';

function GetFirebirdRootDir : string;
begin
   Result := '';
   with TRegistry.Create do begin
      RootKey := Regroot;

      { Firebird kulcs }
      if OpenKeyReadOnly(FB_RegKey) then begin
         if ValueExists(FB_DefaultInstance) then Result := ReadString(FB_DefaultInstance);
         CloseKey;
      end;

      { Borland/Interbase kulcs }
      if Length(Result)=0 then begin
         if OpenKeyReadOnly(IB_RegKey) then begin
            if ValueExists(IB_RootDir) then Result := ReadString(IB_RootDir);
            CloseKey;
         end;
      end;
      Free;
   end;
end;


c#:

Kód: Egész kijelölése

const string FB_RegKey = "\\Software\\Firebird Project\\Firebird Server\\Instances";
const string FB_DefaultInstance = "DefaultInstance";
const string IB_RegKey = "\\Software\\Borland\\InterBase\\CurrentVersion";
const string IB_RootDir = "RootDirectory";
const string Regroot = "HKEY_LOCAL_MACHINE";

public string GetFirebirdRootDir() {
   string fbpath = Registry.GetValue(Regroot+FB_RegKey, FB_DefaultInstance, null).ToString();
   if (fbpath == null) {
      fbpath = Registry.GetValue(Regroot + IB_RegKey, IB_RootDir, null).ToString();
   }
   return fbpath;
}

Üdv.: gaborg


Vissza: “Firebird”