Добрый день, уважаемые программисты!
База данных, созданная в MS Access 2010 (.mdb) подключается через ADOConnection к Delphi. Дальнейшие манипуляции по добавлению, удалению, редактированию, поиску и т.п. осуществляются через ADOQuery, для отображения данных используются DBGrid. Всё очень красиво и замечательно, всё прекрасно работает, НО...
Работает всё это только на моём ПК, а на других не хочет (особенно на универском)
Я честно пыталась этого избежать с помощью вот этого:
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
ADOConnection1.Close();
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
ADOConnection1.Close();
ADOConnection1.ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+ExtractFilePath(Application.ExeName)+'it_otdel_duma.mdb;Persist Security Info=False';
Application.HintHidePause:=10000; {время показа всплывающих подсказок в милисекундах}
end;
procedure TForm1.FormShow(Sender: TObject);
begin
try
ADOConnection1.Open();
PageControl1.ActivePage := TabSheet1; {текущая вкладка всегда первая - пользователи}
PageControl2.ActivePage := TabSheet9; {текущая вкладка в k-means всегда первая -результаты}
except
ShowMessage ('Не удаётся подключиться к базе: it_otdel_duma.mdb');
Application.Terminate();
end;
end;
Но это меня не спасло, и на "чужих" компах выскакивает ошибка
Причём надо раз 15 нажать на "ОК" - и приложение запускается и всё работает без нареканий
Как избавиться от этой ошибка навсегда? Может быть, это из-за того, что у меня отчёты собраны в отдельную папку (их как раз 14 штук)? Т.е., у меня есть папка "Приложение", в ней БД, приложение и всё что с ним связано, и папка Reports - в ней как раз все отчёты. Вот так
Но при каждом вызове запроса я прописывала:
RvProject10.ProjectFile:=ExtractFilePath (Application.ExeName) +'Reports\Project10.rav';
RvProject10.Execute;
Как же убрать эту мерзопакостную ошибку?