![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ADO и ошибка "Класс не зарегистрирован" [D6, MSSQL]
leonidus © (2011-02-16 11:26:00)Сложно описать проблему досконально, потому что у меня она не воспроизводится, а воспроизводится только у одного из клиентов. Какие-то выводы могу делать только по логу сформированному библиотекой JEDI.
Вот что видно из лога:
Exception EOleException: Класс не зарегистрирован
Exception occured at $004FE0B2 (Module "ADODB", Procedure "TADOConnection.DoConnect", Unit "", Line 0)
[004FE0AD] ADODB.TADOConnection.DoConnect
[00406FAD] System.@CheckAutoResult
[004EACA9] DB.TCustomConnection.SetConnected
[00462CDD] Forms.TCustomForm.DoCreate
[004629C9] Forms.TCustomForm.AfterConstruction
[00469FD9] Forms.TApplication.CreateForm
Суть в том, что при старте программа подключается к базе данных mdb через ADO вот таким способом:
ADOConnection1.Connected:=false;
if not ADOConnection1.Connected then
ADOConnection1.ConnectionString := Format(ConnStr, [Provider,DataProvider, ProjectsFilePath, '']);
ADOConnection1.Connected:=true;
Вероятно при коннекте и возникает ошибка.
Подобная ошибка была у одного юзера на нетбуке с урезанной виндой, но у этого юзера судя по логу - Windows XP Professional Service Pack 3 (Build 2600) а в такой системе все средства ADO должны быть предустановлены. Мастера, кто что посоветует?
leonidus (2011-02-28 21:27:00) [1]А как прописать версию в строке коннекта?
sniknik (2011-02-17 19:44:00) [2]как лечить 2007 офис? не, это не лечится, он сам по себе такой убогий... хотя говорят есть платная программа которая приводит его внешний вид к нормальному отображению...
а по программе, я же уже все сказал... нет? [9]
есть настройка которая задает версию открываемого/ой движка/базы по дефаулту. пусть найдут и поставят там версию твоей, которую ты им скажешь... ведь ты знаешь какой версии базу создавал?
или, чтобы твоей программе не требовался дефаулт пропиши версию в строке коннекта.
leonidus (2011-02-17 18:11:00) [3]sniknik юзер говорит что у него 2007 офис. вы знаете как лечить?
sniknik (2011-02-17 08:07:00) [4]не доходят сообщения пейджера? перечитайте!
для ошибки про которую речь обязательно, т.к. не будь офиса не было бы и настройки которую можно переключить неправильно для используемой базы... а в реестре мало кто настраивает напрямую (и если настроит не то то ССЗБ).
Smile (2011-02-17 07:57:00) [5]> sniknik © (16.02.11 22:06) [9]
Совсем не обязательно, чтобы у клиента был установлен какой-либо офис. Вполне достаточно доступа к самой базе MDB
sniknik (2011-02-16 22:06:00) [6]> значения переменных не известно
как это не известны, подключение - "на деревню дедушке"?
они либо в программе либо задаются в настройках... но всегда известны.
кстати, а у него там случаем не 2007 мсофис стоит? был один занятняй глюк с его участием. может связано. (там где то в нем/реестре задается/прописывается версия движка по умолчанию, и можно задать больше чем версия базы mdb...)
leonidus (2011-02-16 20:52:00) [7]значения переменных не известно - у меня проблема не воспроизводится да и у 99% пользователей тоже. У проблемного юзера оказалась последняя версия MDAC 2.81 для его винды и переустановить винда не дает. будем писать тестовую программу чтобы посмотреть что там с переменными.
sniknik (2011-02-16 14:05:00) [8]> Суть в том, что при старте программа подключается к базе данных mdb через ADO вот таким способом:
> ADOConnection1.ConnectionString := Format(ConnStr, [Provider,DataProvider, ProjectsFilePath, '']);
а что получается в итоге? какие значения переменных?
вариант - в пути к базе пробелы есть, а обрамления кавычками нет.
leonidus (2011-02-16 11:54:00) [9]ок, спасибо попробуем.
clickmaker (2011-02-16 11:50:00) [10]да
leonidus (2011-02-16 11:46:00) [11]Вот этот:
http://www.microsoft.com/downloads/en/details.aspx?FamilyID=6c050fe3-c795-4b7d-b037-185d0506396c&DisplayLang=en?
clickmaker (2011-02-16 11:43:00) [12]HKEY_LOCAL_MACHINE\Software\Microsoft\DataAccess
может, просто переустановить MDAC на той машине?
leonidus (2011-02-16 11:36:00) [13]clickmaker а как узнать номер версии?
clickmaker (2011-02-16 11:27:00) [14]MDAC какой версии у юзера?