Текущий архив: 2004.11.28;
Скачать: CL | DM;
ВнизУпаковка Access базы из программы Найти похожие ветки
← →
diabolik_krsk (2004-10-27 09:25) [0]Доброго времени суток уважаемые мастера.
Вопрос такой:
Как в программе через событие Button1.OnClick реализовать сжатие базы данных Access, как это происходит через сам Access через меню Сервис->Служебные программы->Сжать и восстановить базу данных?
Заранее благодарен.
← →
Kuusiniemi (2004-10-27 09:36) [1]Поиск рулит.
Постоянно спрашивают ведь!
← →
diabolik_krsk (2004-10-27 10:50) [2]
> Kuusiniemi (27.10.04 09:36) [1]
> Поиск рулит.
> Постоянно спрашивают ведь!
Спрашивать спрашивают, а найти проблематично. Час лазил по поиску - не нашел.
← →
REP © (2004-10-27 10:53) [3]Может поможет?
← →
REP © (2004-10-27 10:53) [4]Забыл:
http://delphi.about.com/library/weekly/aa091801a.htm
← →
Erik1 © (2004-10-27 11:00) [5]{ Microsoft DAO 3.6 Object Library }
{ The Microsoft Jet database engine. }
_DBEngine = interface(_DAO)
["{00000021-0000-0010-8000-00AA006D2EA4}"]
procedure CompactDatabase(const SrcName, DstName: WideString; DstLocale, Options, SrcLocale: OleVariant); safecall;
procedure RepairDatabase(const Name: WideString); safecall;
Ну что еще нужно для счастья, почему все время дают сылки на кикието идеотские примеры?!
← →
REP © (2004-10-27 11:03) [6]Erik1 © (27.10.04 11:00) [5]
Ну человек искал больше часа.
Я поискал одну минуту.
← →
diabolik_krsk (2004-10-29 09:18) [7]
> Erik1 © (27.10.04 11:00) [5]
> Ну что еще нужно для счастья, почему все время дают сылки
> на кикието идеотские примеры?!
А чем плох тогда Microsoft Jet and Replication Objects 2.x Library (Version 2.5)/ библиотека msjro.dll/ Вроде смысл тот же. Только там JRO, а у тебя DAO??
В чем разница?
← →
Vit@ly © (2004-10-29 10:35) [8]Попробуй
uses
ComObj;function CompactAndRepair(DB: string): Boolean; {DB = Path to Access Database}
var
v: OLEvariant;
begin
Result := True;
try
v := CreateOLEObject("JRO.JetEngine");
try
V.CompactDatabase("Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+DB,
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+DB+"x;Jet OLEDB:Engine Type=5");
DeleteFile(DB);
RenameFile(DB+"x",DB);
finally
V := Unassigned;
end;
except
Result := False;
end;
end;
← →
diabolik_krsk (2004-11-02 04:56) [9]ИМХО кажется ошибочка в коде
> Vit@ly © (29.10.04 10:35) [8]
> V := Unassigned;
Должно быть V.Unassigned;
Поправьте если я не прав.
← →
sniknik © (2004-11-02 08:16) [10]неправ, должно быть именно так как было.
← →
diabolik_krsk (2004-11-03 08:02) [11]Прошу прощения. Параметр Unassigned относится к юниту Variants, который в свою очередь не был прописан в Uses моей формы. Теперь все заработало. Спасибо.
Страницы: 1 вся ветка
Текущий архив: 2004.11.28;
Скачать: CL | DM;
Память: 0.46 MB
Время: 0.039 c