Доброго времени суток и года многоуважаемый All !!!
Мой вопрос касается скорее всего компетенции специалистов в затрагиваемой области, посему и обращаюсь с надеждой на помощь в решении проблемы к оным.
Итак:
То ли бедность, то ли боязнь, что придут определённые товарисчи со спец. значком на вороте и сделают предъяву за отсутствие лицензий на общеизвестный софт. То ли и то, и другое, плюс желание познать что-то новое, угораздило меня захотеть перевести программу которая заполняла через SQL запросы некий файл base.mdb с юэсэйной форточной системы на человечную африканскую.
Да не всё так просто делается как здесь описывается.
1. Система Ubuntu 10.04.4
2. Wine 1.4
3. Драйвера ODBC поддерживающие MS Access Database установлены.
4. ОЗУ - 1,5 Gb
5 Система заполнения базы данных:Клиент - Сервер. Написана на Delphi 7 ещё с момента первого её выхода в свет.
6. Переписать программу под Линукс дороже чем написать новую, но уже под ВЕБ, дабы не заниматься любовью с кочеванием по ОСях. Но в данный момент необходимо заставить работать серверную часть программы под Wine в Ubuntu.
ФАКТ:
При обращении к Data Source компоненты TADOQuery
Data:=TStringList.Create;
MyQuery:=TADOQuery.Create(nil);
mq:='Provider=Microsoft.Jet.OLEDB.4.0;Persist Security Info=False;Data Source=base.mdb';
MyQuery.ConnectionString:=mq;
ASender.Thread.Connection.ReadStrings(Data);
MyQuery.SQL.AddStrings(Data);
ВОТ ЗДЕСЬ вызывается исключение "ADODB.Connection error '800a0e7a'"
Используя Virtual Box OSE проблема пропадает. Но юзание виртуальной машины меня не устраивает в принципе. Зачем переходить на Линукс ежели всё-равно приходится работать в Windows?
ПРОБЛЕМА:
Я понимаю, что собака где-то недалеко порылась. Как настроить доступ к драйверам уиндавс которые обслуживают мою компоненту, и как заставить их (или что-то может быть исчо) отрабатывать запрос в моей программе?
Спасибо всем кто дочитал до конца.
Буду признателен и с меня биир тем кто по сути сможет мне помочь.