Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno Delphi 2007 - Ako sa na chvíľu odpojiť od databázy?

Ako som tu už cez leto písal, robím jeden databázový program v Delphi 2007. Momentálne by som potreboval urobiť zálohovanie súborov databázy priamo cez tento program. No pri spustenej databáze sa tie súbory nedajú ani len kopírovať. Ako mám program odpojiť od databázy?

Používam databázu Sybase SQL Anywhere 5.5 a v Delphi sa k nej pripájam cez ADO komponenty. Inak, keď nastavím ADOConnection.Connected := false, tak sa môj program síce odpojí od databázy, ale databáza ešte stále beží a jej súbory sa nedajú kopírovať.

Neviete mi poradiť, čo mám urobiť, aby som mohol kopírovať súbory databázy?

Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
No, tak už dávnejšie som zistil, že riešenie cez DLL knižnicu je zbytočne komplikované. Zistil som,… poslední
gorgeous007 16.12.2008 18:43
gorgeous007

No, tak už dávnejšie som zistil, že riešenie cez DLL knižnicu je zbytočne komplikované. Zistil som, že databáza sa dá zálohovať aj spustením pomocného programu dbbackup.exe s určitým parametrom. Konkrétne ide o:

"C:\Program Files\***\dbbackup.exe" -c "eng=***;dbn=***;uid=***;pwd=***" "C:\Program Files\***\Temp"

Tento príkaz sa mi podarilo spustiť len cez funkciu WinExec. Lenže ja potrebujem počkať, kým tento zálohovací program urobí to čo má a potom vykonať zopár ďalších vecí. Našiel som na to zdrojový kód funkcie, ktorá využíva funkciu CreateProcess, a čaká kým sa proces neukončí. Lenže táto mi spustí program dbbackup.exe len "prázdny" bez parametrov. Takže ako mám spustiť vyššie uvedený príkaz tak, aby pri spustení programu dbbackup.exe bral do úvahy aj vstupné parametre a aby som vedel počkať na jeho ukončenie?

Zpět do poradny Odpovědět na původní otázku Nahoru