Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 04.03.2013, 16:39   #1
Ягодка
Пользователь
 
Аватар для Ягодка
 
Регистрация: 11.02.2013
Сообщений: 32
Радость Delphi 7, подключение к БД, ошибка "Строка задаёт ошибочный путь"

Добрый день, уважаемые программисты!
База данных, созданная в 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;
Но это меня не спасло, и на "чужих" компах выскакивает ошибка:
7.jpg
Причём надо раз 15 нажать на "ОК" - и приложение запускается и всё работает без нареканийКак избавиться от этой ошибка навсегда? Может быть, это из-за того, что у меня отчёты собраны в отдельную папку (их как раз 14 штук)? Т.е., у меня есть папка "Приложение", в ней БД, приложение и всё что с ним связано, и папка Reports - в ней как раз все отчёты. Вот так:
5.jpg
Но при каждом вызове запроса я прописывала:
Код:
RvProject10.ProjectFile:=ExtractFilePath (Application.ExeName) +'Reports\Project10.rav';
RvProject10.Execute;
Как же убрать эту мерзопакостную ошибку?
Ягодка вне форума Ответить с цитированием
Старый 04.03.2013, 17:46   #2
GreenWizard
мальчик-помогай =)
Форумчанин
 
Регистрация: 16.09.2010
Сообщений: 522
По умолчанию

а соединение случайно не активно сразу после старта? в инспекторе объектов глянь у ADOConnection1 св-во Active или как-то так... оно должно быть false

может быть, что ADOConnection1 активен сразу и со старой строкой соединения т.е. так:
1) старт
2) связь по старой ссылке (она актуальна на компе дома)
3) событие OnCreate... закрытие БД и установка новой строки соед.

Последний раз редактировалось GreenWizard; 04.03.2013 в 17:55.
GreenWizard вне форума Ответить с цитированием
Старый 04.03.2013, 18:03   #3
Ягодка
Пользователь
 
Аватар для Ягодка
 
Регистрация: 11.02.2013
Сообщений: 32
По умолчанию

GreenWizard, быть может, попробую... Спасибо!
Ягодка вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка "Expecting a valid name" для оператора "<" в JScript Ратибор Редоран JavaScript, Ajax 0 15.12.2011 14:38
Ошибка:является "поле" но используется как "метод" hitman47IT Помощь студентам 0 22.11.2011 20:55
Правильный параметр "командная строка" в макрокоманде "ЗапускПриложения". peektoseen Microsoft Office Access 3 10.03.2010 19:53
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" aleksei78 Microsoft Office Excel 13 25.08.2009 12:04
Ошибка при использовании OlePropertyGet("Documents").OleProcedure("Add") в C++ Builder AleksP C++ Builder 7 11.04.2009 13:06