jaumDoDelphi Postado Junho 21, 2010 Denunciar Share Postado Junho 21, 2010 (editado) Ola a todos bom dia!!!Fiz um programa de BACKUP para o meu bando MDB utilizandoo Zlib!Ele funciona muito bem. mas eu gostaria de limitar a execução delasomente quando "AGENDA.EXE" estiver fechada.EXEMPLO.se AGENDA.EXE estiver na tela ela exibe um showmessage(o backup não pode ser feito com o aplicativo AGENDA aberto).obrigado desde já! Editado Junho 21, 2010 por jaumDoDelphi Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Jhonas Postado Junho 21, 2010 Denunciar Share Postado Junho 21, 2010 Fiz um programa de BACKUP para o meu bando MDB utilizandoo Zlib!Ele funciona muito bem. mas eu gostaria de limitar a execução delasomente quando "AGENDA.EXE" estiver fechada.EXEMPLO.se AGENDA.EXE estiver na tela ela exibe um showmessage(o backup não pode ser feito com o aplicativo AGENDA aberto).A maneira correta de se trabalhar com um backup de banco de dados é quando voce vai finalizar a execução do seu aplicativo.Dentro do seu programa, de preferencia no evento OnFormClose do Menu, voce coloca a rotina de backup perguntando ao usuario se ele deseja fazer o backup.Lembre-se que antes de efetuar o backup voce deve fechar todas as tabelas e finalizar a conexão com o banco de dadosexemplo:// Fechar todos os DataSets Abertos for i := 0 to (ADOConnection1.DataSetCount-1) do ADOConnection1.DataSets[i].close; ADOConnection1.Close;abraço Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 jaumDoDelphi Postado Junho 21, 2010 Autor Denunciar Share Postado Junho 21, 2010 (editado) Ola Jhonas, muito obrigado pela dica!mas no meu caso seria uma agenda simples, nada muito complexa para fazer backup diarios!mas sim uma vez por semana ou ate menos.porque quem vai utilizar o programa é só EU minha esposa e meu irmão.se alguém tiver algum código ou exemplo de como eu posso faz a checagem da "AGENDA.EXE" estiver aberto ele da um CLOSE; no BackUP.EXEagradeço muito! Editado Junho 21, 2010 por jaumDoDelphi Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Douglas Soares Postado Junho 21, 2010 Denunciar Share Postado Junho 21, 2010 Faz assim:function TfrmPrincipal.ProcessoExiste(ExeFileName: string): boolean; const PROCESS_TERMINATE=$0001; var ContinueLoop: BOOL; FSnapshotHandle: THandle; FProcessEntry32: TProcessEntry32{declarar Uses Tlhelp32}; begin result := false; FSnapshotHandle := CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0); FProcessEntry32.dwSize := Sizeof(FProcessEntry32); ContinueLoop := Process32First(FSnapshotHandle,FProcessEntry32); while integer(ContinueLoop) <> 0 do begin if ((UpperCase(ExtractFileName(FProcessEntry32.szExeFile)) = UpperCase(ExeFileName)) or (UpperCase(FProcessEntry32.szExeFile) = UpperCase(ExeFileName))) then begin Result := true; exit; end; ContinueLoop := Process32Next(FSnapshotHandle,FProcessEntry32); end; CloseHandle(FSnapshotHandle); end; Como usar: if ProcessoExiste('AGENDA.exe') then Application.Terminate; Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 jaumDoDelphi Postado Junho 21, 2010 Autor Denunciar Share Postado Junho 21, 2010 muito obrigado Douglas_Soares!esta função que você me passou funcionou muito bem! :D Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
jaumDoDelphi
Ola a todos bom dia!!!
Fiz um programa de BACKUP para o meu bando MDB utilizando
o Zlib!
Ele funciona muito bem. mas eu gostaria de limitar a execução dela
somente quando "AGENDA.EXE" estiver fechada.
EXEMPLO.
se AGENDA.EXE estiver na tela ela exibe um
showmessage(o backup não pode ser feito com o aplicativo AGENDA aberto).
obrigado desde já!
Editado por jaumDoDelphiLink para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.