Fórum Local Share #192741

04/11/2003

0

Caro amigos,

Como faço para pegar o valor de [b:630401b892]Local Share[/b:630401b892] configurado na BDE?

Preciso pegar o valor True ou falso e jogar num checkbox.


Sistemald

Sistemald

Responder

Posts

04/11/2003

Bacalhau

Estimado colega, esta rotina não pega o LOCAL SHARE mas contém a solução para lá chegar.


// variaveis de multi-configuração de BDEs

CONFIG_BDE : string;
PATH_BDE : string;
REGISTO : TRegistry;
ENCONTROU_REG : BOOLEAN;
COPIOU_FILE : BOOLEAN;


REGISTO := TREGISTRY.CREATE;
registo.rootkey := HKEY_LOCAL_MACHINE;

ENCONTROU_REG :=
registo.OpenKey(´Software\Borland\Database Engine´, false);

IF ENCONTROU_REG THEN
BEGIN
path_bde := registo.Readstring(´CONFIGFILE01´);
COPIOU_FILE := COPYFILE(PCHAR(CONFIG_BDE),PCHAR(PATH_BDE),FALSE);
END;

registo.CLOSEKEY;
REGISTO.FREE;


Isto é uma rotina para activar BDEs diversos (locais, em rede, etc). O segredo está na var REGISTO. O resultado que procuras está no registry.

abraço


Responder

Gostei + 0

04/11/2003

Sistemald

Valeu [b:723ddfe3a8]Bacalhau[/b:723ddfe3a8],

a procedure ficou assim...

[i:723ddfe3a8][b:723ddfe3a8]procedure[/b:723ddfe3a8] TForm1.Button1Click(Sender: TObject);
[b:723ddfe3a8]var[/b:723ddfe3a8]
PATH_BDE : string;
REGISTO : TRegistry;
ENCONTROU_REG : BOOLEAN;
[b:723ddfe3a8]begin[/b:723ddfe3a8]
REGISTO := TREGISTRY.CREATE;
registo.rootkey := HKEY_LOCAL_MACHINE;
ENCONTROU_REG := registo.OpenKey(´SOFTWARE\Borland\Database Engine\Settings\SYSTEM\INIT´, false);
[b:723ddfe3a8]IF[/b:723ddfe3a8] ENCONTROU_REG [b:723ddfe3a8]THEN[/b:723ddfe3a8]
[b:723ddfe3a8]BEGIN[/b:723ddfe3a8]
path_bde := registo.Readstring(´LOCAL SHARE´);
[b:723ddfe3a8]END;[/b:723ddfe3a8]
edit1.text:= path_bde ;
registo.CLOSEKEY;
REGISTO.FREE;
[b:723ddfe3a8]end;[/b:723ddfe3a8][/i:723ddfe3a8]


Responder

Gostei + 0

05/11/2003

Bacalhau

Abração daqueles 8)


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar