![ActiveDelphi - Índice do Fórum](templates/subSilver/images/logo_phpBB.gif) |
ActiveDelphi .: O site do programador Delphi! :.
|
Exibir mensagem anterior :: Exibir próxima mensagem |
Autor |
Mensagem |
AndreZc Membro Junior
![Membro Junior Membro Junior](../modules/PNphpBB2/templates/PNTheme/images/narodniki-classic/star3.gif)
Registrado: Quinta-Feira, 22 de Abril de 2010 Mensagens: 383 Localização: Rio de Janeiro
|
Enviada: Qui Jan 06, 2011 3:00 pm Assunto: Restaurar FBK para Delphi |
|
|
Olá,
eu gostaria de saber quais componentes eu uso para restaurar um arquivo FBK (Backup) ? Alguém tem uma boa referência ?
Tentei assim:
Citação: | F:\Arquivos de programas\Firebird\Firebird_2_5\bin>gbak -user SYSDBA -pas master
key -r -p 4096 -o f:\DADOS.fbk localhost:f:\DADOS.fdb
gbak: ERROR:Your user name and password are not defined. Ask your database admin
istrator to set up a Firebird login.
gbak:Exiting before completion due to errors
F:\Arquivos de programas\Firebird\Firebird_2_5\bin>gbak -user SYSDBA -pas master
key -r -p 4096 -o f:\DADOS.fbk localhost:f:\DADOS.fdb
gbak: ERROR:Your user name and password are not defined. Ask your database admin
istrator to set up a Firebird login.
gbak:Exiting before completion due to errors
F:\Arquivos de programas\Firebird\Firebird_2_5\bin>gbak -user SYSDBA -pas master
key -r -p 4096 -o f:\DADOS.fbk f:\DADOS.fdb
gbak: ERROR:Your user name and password are not defined. Ask your database admin
istrator to set up a Firebird login.
gbak:Exiting before completion due to errors
|
Mas como vocês podem ver, da erro.
Alguma sugestão ?
Muito obrigado. |
|
Voltar ao Topo |
|
![](templates/subSilver/images/spacer.gif) |
AndreZc Membro Junior
![Membro Junior Membro Junior](../modules/PNphpBB2/templates/PNTheme/images/narodniki-classic/star3.gif)
Registrado: Quinta-Feira, 22 de Abril de 2010 Mensagens: 383 Localização: Rio de Janeiro
|
Enviada: Qui Jan 06, 2011 3:49 pm Assunto: |
|
|
Alguém por favor ? =o |
|
Voltar ao Topo |
|
![](templates/subSilver/images/spacer.gif) |
Keron Experiente
![Experiente Experiente](../modules/PNphpBB2/templates/PNTheme/images/narodniki-classic/star4.gif)
![](http://www.rhemasolutions.com.br/imagens/perfil.jpg)
Registrado: Terça-Feira, 25 de Outubro de 2005 Mensagens: 463
|
Enviada: Qui Jan 06, 2011 9:53 pm Assunto: |
|
|
Qual delphi vc utiliza? _________________ Filho de Deus
em Cristo Jesus |
|
Voltar ao Topo |
|
![](templates/subSilver/images/spacer.gif) |
AndreZc Membro Junior
![Membro Junior Membro Junior](../modules/PNphpBB2/templates/PNTheme/images/narodniki-classic/star3.gif)
Registrado: Quinta-Feira, 22 de Abril de 2010 Mensagens: 383 Localização: Rio de Janeiro
|
Enviada: Qui Jan 06, 2011 11:28 pm Assunto: |
|
|
Keron escreveu: | Qual delphi vc utiliza? |
Uso o 2010.
Obrigado. |
|
Voltar ao Topo |
|
![](templates/subSilver/images/spacer.gif) |
Keron Experiente
![Experiente Experiente](../modules/PNphpBB2/templates/PNTheme/images/narodniki-classic/star4.gif)
![](http://www.rhemasolutions.com.br/imagens/perfil.jpg)
Registrado: Terça-Feira, 25 de Outubro de 2005 Mensagens: 463
|
Enviada: Sex Jan 07, 2011 1:22 pm Assunto: |
|
|
Veja se esse código abaixo ajuda
Código: | =============[ declarando a função ]
em private
function ExecutaGBak(comando,BackupRestore:String):Boolean;
bt restore
==========
frmDados.SIACDados.Connected:=False; // Desliga a base de dados
ExecutaGBak('restore.cmd','Restore'); // executa o restore - restore.cmd será substituido por um comando direto escrito em config
frmDados.SIACDados.Connected:=True; // religa a base de dados
bt backup
=========
ExecutaGBak('c:\Arquivos de Programas\Firebird\Firebird_2_1\Bin\gbak.exe -v -b -user SYSDBA -pass masterkey c:\Pasta\Banco.FDB c:\Backup\backup.fdk','Backup');
// a instrução 'c:\Arquivos ....' sere substituido por um comando direto vindo de config.ini
=================ExecutaGBak====================
function TFrmBackup.ExecutaGBak(comando,BackupRestore:String):Boolean;
var
StartUpInfo : TStartUpInfo;
ProcessInformation : TProcessInformation;
ProcessOk : Boolean;
SA : TSecurityAttributes;
StdOutPipeRead,
StdOutPipeWrite : THandle;
Buffer : array[0..16384] of Char;
TotalBytesAvail,
BytesLeftThisMessage,
BytesRead : Cardinal;
Linha : String;
begin
Result := False;
Application.ProcessMessages;
with SA do
begin
nLength := SizeOf(SA);
bInheritHandle := True;
lpSecurityDescriptor := nil;
end;
CreatePipe(StdOutPipeRead, //read handle
StdOutPipeWrite, //write handle
@SA, //security attributes
0 //number of bytes reserved for pipe - 0 default
);
try
with StartUpInfo do
begin
FillChar(StartUpInfo,SizeOf(StartUpInfo),0);
cb := SizeOf(StartUpInfo);
dwFlags := STARTF_USESHOWWINDOW or STARTF_USESTDHANDLES;
if (Win32Platform=VER_PLATFORM_WIN32_WINDOWS) then
wShowWindow := SW_HIDE
else
wShowWindow := SW_SHOWMINNOACTIVE;
hStdInput := GetStdHandle(STD_INPUT_HANDLE); // don't redirect std input
hStdOutput := StdOutPipeWrite;
hStdError := StdOutPipeWrite;
end;
ProcessOK :=
CreateProcess(NIL,PChar(comando),NIL,NIL,True,IDLE_PRIORITY_CLASS or
CREATE_NO_WINDOW,NIL,NIL,StartUpInfo,ProcessInformation);
CloseHandle(StdOutPipeWrite);
try
Linha := '';
repeat
ProcessOK := (WaitForSingleObject(ProcessInformation.hProcess,8)<WAIT_OBJECT_0>0) then
begin
if (BytesRead>16384) then
BytesRead := 16384;
ProcessOK :=ReadFile(StdOutPipeRead,Buffer,BytesRead,BytesRead,NIL);
end;
if (BytesRead>0) then
begin
Buffer[BytesRead] := #0;
Linha := (Linha+Buffer);
while (Pos(#13#10,Linha)>0) do
begin
Lista.Items.Add(Trim(Copy(Linha,1,Pos(#13#10,Linha)-1)));
Linha := Copy(Linha,Pos(#13#10,Linha)+2,5000);
end;
Lista.ItemIndex := (Lista.Items.Count-1);
end;
until (not ProcessOK); //{or (BytesRead=0)});
Result := ((BackupRestore='Backup') and (Copy(Lista.Items.Strings[Lista.Items.Count-1],1,46)='comando: closing file, committing, and finishing.')) or
((BackupRestore='Restore') and (Copy(Lista.Items.Strings[Lista.Items.Count-1],1,40)='comando: finishing, closing, and going home'));
finally
CloseHandle(ProcessInformation.hThread);
CloseHandle(ProcessInformation.hProcess);
end;
finally
CloseHandle(StdOutPipeRead);
end;
lstLista.Items.Add(BackupRestore+' realizado com sucesso!');
lstLista.ItemIndex := (lstLista.Items.Count-1);
end;
|
Lembrando que não fui eu quem desenvolvei o código, peguei da net e fiz minhas adaptações, com D7 funciona _________________ Filho de Deus
em Cristo Jesus |
|
Voltar ao Topo |
|
![](templates/subSilver/images/spacer.gif) |
Keron Experiente
![Experiente Experiente](../modules/PNphpBB2/templates/PNTheme/images/narodniki-classic/star4.gif)
![](http://www.rhemasolutions.com.br/imagens/perfil.jpg)
Registrado: Terça-Feira, 25 de Outubro de 2005 Mensagens: 463
|
Enviada: Sex Jan 07, 2011 1:36 pm Assunto: |
|
|
Também faz parte do Código
Código: | procedure RunDosInMemo(DosApp:String;AMemo:TMemo) ;
const
ReadBuffer = 1048576;
var
Security : TSecurityAttributes;
ReadPipe,WritePipe : THandle;
start : TStartUpInfo;
ProcessInfo : TProcessInformation;
Buffer : Pchar;
BytesRead : DWord;
Apprunning : DWord;
begin
With Security do
begin
nlength := SizeOf(TSecurityAttributes) ;
binherithandle := true;
lpsecuritydescriptor := nil;
end;
if Createpipe (ReadPipe, WritePipe, @Security, 0) then
begin
Buffer := AllocMem(ReadBuffer + 1) ;
FillChar(Start,Sizeof(Start),#0) ;
start.cb := SizeOf(start) ;
start.hStdOutput := WritePipe;
start.hStdInput := ReadPipe;
start.dwFlags := STARTF_USESTDHANDLES +
STARTF_USESHOWWINDOW;
start.wShowWindow := SW_HIDE;
if CreateProcess(nil, PChar(DosApp), @Security, @Security,
true, NORMAL_PRIORITY_CLASS, nil, nil, start, ProcessInfo) then
begin
repeat
Apprunning := WaitForSingleObject
(ProcessInfo.hProcess,100) ;
Application.ProcessMessages;
until (Apprunning <> WAIT_TIMEOUT) ;
Repeat
BytesRead := 0;
ReadFile(ReadPipe,Buffer[0],ReadBuffer,BytesRead,nil) ;
Buffer[BytesRead]:= #0;
OemToAnsi(Buffer,Buffer) ;
AMemo.Text := AMemo.text + String(Buffer) ;
until (BytesRead < ReadBuffer) ;
end;
FreeMem(Buffer) ;
CloseHandle(ProcessInfo.hProcess) ;
CloseHandle(ProcessInfo.hThread) ;
CloseHandle(ReadPipe) ;
CloseHandle(WritePipe) ;
end;
end;
|
_________________ Filho de Deus
em Cristo Jesus |
|
Voltar ao Topo |
|
![](templates/subSilver/images/spacer.gif) |
faccruz Colaborador
![Colaborador Colaborador](../modules/PNphpBB2/templates/PNTheme/images/narodniki-classic/colaborador.gif)
Registrado: Terça-Feira, 20 de Julho de 2010 Mensagens: 1563
|
Enviada: Sex Jan 07, 2011 1:57 pm Assunto: Re: Restaurar FBK para Delphi |
|
|
AndreZc escreveu: | Olá,
eu gostaria de saber quais componentes eu uso para restaurar um arquivo FBK (Backup) ? Alguém tem uma boa referência ?
Tentei assim:
Citação: | F:\Arquivos de programas\Firebird\Firebird_2_5\bin>gbak -user SYSDBA -pas master
key -r -p 4096 -o f:\DADOS.fbk localhost:f:\DADOS.fdb
gbak: ERROR:Your user name and password are not defined. Ask your database admin
istrator to set up a Firebird login.
gbak:Exiting before completion due to errors
F:\Arquivos de programas\Firebird\Firebird_2_5\bin>gbak -user SYSDBA -pas master
key -r -p 4096 -o f:\DADOS.fbk localhost:f:\DADOS.fdb
gbak: ERROR:Your user name and password are not defined. Ask your database admin
istrator to set up a Firebird login.
gbak:Exiting before completion due to errors
F:\Arquivos de programas\Firebird\Firebird_2_5\bin>gbak -user SYSDBA -pas master
key -r -p 4096 -o f:\DADOS.fbk f:\DADOS.fdb
gbak: ERROR:Your user name and password are not defined. Ask your database admin
istrator to set up a Firebird login.
gbak:Exiting before completion due to errors
|
Mas como vocês podem ver, da erro.
Alguma sugestão ?
Muito obrigado. |
Amigo, o a senha do banco tá separado? pois dá essa impressão. _________________ Facc System - Sistemas para Computador |
|
Voltar ao Topo |
|
![](templates/subSilver/images/spacer.gif) |
rafmattos Colaborador
![Colaborador Colaborador](../modules/PNphpBB2/templates/PNTheme/images/narodniki-classic/colaborador.gif)
Registrado: Quinta-Feira, 11 de Fevereiro de 2010 Mensagens: 3416 Localização: Campo Grande/MS
|
Enviada: Sex Jan 07, 2011 2:44 pm Assunto: |
|
|
gostei da rotina do Keron
muito boa!!! |
|
Voltar ao Topo |
|
![](templates/subSilver/images/spacer.gif) |
AndreZc Membro Junior
![Membro Junior Membro Junior](../modules/PNphpBB2/templates/PNTheme/images/narodniki-classic/star3.gif)
Registrado: Quinta-Feira, 22 de Abril de 2010 Mensagens: 383 Localização: Rio de Janeiro
|
Enviada: Sex Jan 07, 2011 4:18 pm Assunto: |
|
|
Opa! Consegui com o componente IBRestaureService. Muito obrigado a todos. |
|
Voltar ao Topo |
|
![](templates/subSilver/images/spacer.gif) |
Keron Experiente
![Experiente Experiente](../modules/PNphpBB2/templates/PNTheme/images/narodniki-classic/star4.gif)
![](http://www.rhemasolutions.com.br/imagens/perfil.jpg)
Registrado: Terça-Feira, 25 de Outubro de 2005 Mensagens: 463
|
Enviada: Sex Jan 07, 2011 7:29 pm Assunto: |
|
|
Eu peguei ela na web, só fiz algumas alterações para deixar funcional. _________________ Filho de Deus
em Cristo Jesus |
|
Voltar ao Topo |
|
![](templates/subSilver/images/spacer.gif) |
adriano_servitec Colaborador
![Colaborador Colaborador](../modules/PNphpBB2/templates/PNTheme/images/narodniki-classic/colaborador.gif)
Registrado: Sexta-Feira, 30 de Janeiro de 2004 Mensagens: 17618
|
Enviada: Sex Jul 15, 2011 5:40 pm Assunto: |
|
|
Keron escreveu: | Também faz parte do Código
Código: | procedure RunDosInMemo(DosApp:String;AMemo:TMemo) ;
const
ReadBuffer = 1048576;
var
Security : TSecurityAttributes;
ReadPipe,WritePipe : THandle;
start : TStartUpInfo;
ProcessInfo : TProcessInformation;
Buffer : Pchar;
BytesRead : DWord;
Apprunning : DWord;
begin
With Security do
begin
nlength := SizeOf(TSecurityAttributes) ;
binherithandle := true;
lpsecuritydescriptor := nil;
end;
if Createpipe (ReadPipe, WritePipe, @Security, 0) then
begin
Buffer := AllocMem(ReadBuffer + 1) ;
FillChar(Start,Sizeof(Start),#0) ;
start.cb := SizeOf(start) ;
start.hStdOutput := WritePipe;
start.hStdInput := ReadPipe;
start.dwFlags := STARTF_USESTDHANDLES +
STARTF_USESHOWWINDOW;
start.wShowWindow := SW_HIDE;
if CreateProcess(nil, PChar(DosApp), @Security, @Security,
true, NORMAL_PRIORITY_CLASS, nil, nil, start, ProcessInfo) then
begin
repeat
Apprunning := WaitForSingleObject
(ProcessInfo.hProcess,100) ;
Application.ProcessMessages;
until (Apprunning <> WAIT_TIMEOUT) ;
Repeat
BytesRead := 0;
ReadFile(ReadPipe,Buffer[0],ReadBuffer,BytesRead,nil) ;
Buffer[BytesRead]:= #0;
OemToAnsi(Buffer,Buffer) ;
AMemo.Text := AMemo.text + String(Buffer) ;
until (BytesRead < ReadBuffer) ;
end;
FreeMem(Buffer) ;
CloseHandle(ProcessInfo.hProcess) ;
CloseHandle(ProcessInfo.hThread) ;
CloseHandle(ReadPipe) ;
CloseHandle(WritePipe) ;
end;
end;
|
| amigo, este aqui pega o retorno do GFix? Pq estou tentando executar aqui e da erro. _________________ Jogo seu smartphone? Acesse o link e confira.
https://play.google.com/store/apps/details?id=br.com.couldsys.rockdrum
https://play.google.com/store/apps/details?id=br.com.couldsys.drumsetfree |
|
Voltar ao Topo |
|
![](templates/subSilver/images/spacer.gif) |
Keron Experiente
![Experiente Experiente](../modules/PNphpBB2/templates/PNTheme/images/narodniki-classic/star4.gif)
![](http://www.rhemasolutions.com.br/imagens/perfil.jpg)
Registrado: Terça-Feira, 25 de Outubro de 2005 Mensagens: 463
|
Enviada: Sex Jul 15, 2011 5:52 pm Assunto: |
|
|
nunca testei com o GFIX. Apenas com o GBak _________________ Filho de Deus
em Cristo Jesus |
|
Voltar ao Topo |
|
![](templates/subSilver/images/spacer.gif) |
|
|
Enviar Mensagens Novas: Proibido. Responder Tópicos Proibido Editar Mensagens: Proibido. Excluir Mensagens: Proibido. Votar em Enquetes: Proibido.
|
|