[ mzarko @ 07.01.2006. 12:07 ] @
Kada se vrsi kompakcija Access baze pomocu dole navedene funkcije u Delphiju, a Access baza ima sifru npr. (mm) na koji nacin treba upisati sifru da bi mogla da se izvrsi kompakcija baze. function KompakcijaBaze (const sdbName: WideString) : boolean; var JE : TJetEngine; sdbTemp : WideString; sdbTempConn : WideString; const SProvider = 'Provider=Microsoft.Jet.OLEDB.4.0; Data Source='; begin Result:=False; sdbTemp := ExtractFileDir(sdbName) + 'TEMP' + ExtractFileName(sdbName); sdbTempConn := SProvider + sdbtemp; if FileExists(sdbTemp) then DeleteFile(sdbTemp); JE:= TJetEngine.Create(Application); try try JE.CompactDatabase(SProvider + sdbName, sdbTempConn); DeleteFile(sdbName); RenameFile(sdbTemp, sdbName); except on E:Exception do ShowMessage(E.Message); end; finally JE.FreeOnRelease; Result:=True; end; end; |