Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Совместимость библиотек для Office


Автор: 3,14 17.3.2005, 17:44
Вот использовал в разработке библиотеки для работы с Access через ADO, принёс на другую железяку не работает - библиотека там более старая. Как сделать чтоб такие случаи не происходили и как протестировать не возникнет ли какой проблемы с совместимостью (хотя бы самые простые вещи проверить) если другого компа под рукой нема?

Автор: Дрон 17.3.2005, 18:48
3,14
Хмм... Что за библиотека такая?

В .NET есть собственные классы для работы с БД. Я их проверял: ставил прогу на чистую Win98SE (правда пришлось IE там обновить, и естественно framework поставить), так эта прога прекрасна читала аксесовскую базу.

Автор: 3,14 17.3.2005, 19:09
Для работы с Access использовались:

Код

using System.Data.Odbc; 
...
OdbcConnection conn;
...
conn = new OdbcConnection("Driver={Microsoft Access Driver (*.mdb)};DBQ=some_db.mdb;UID=;Pwd=");
...
OdbcCommand query = new OdbcCommand("SELECT * FROM table", conn);
...
conn.Close();


Сообщение об ошибке следующее:
Цитата

The .NET Data OLE DB Provider(System.Data.OleDb) requires Microsoft Data Access Components (MDAC) version 2.6 or later. Version 2.53.6200.0 was found currently installed.

Автор: 3,14 17.3.2005, 19:28
Обновление эксплорера не помогло smile

Автор: arilou 17.3.2005, 19:56
Можно вопрос - а зачем использовать ODBC, если есть System.Data.OleDb?

В любом случае, для System.Data нужен именно тот MDAC (или старше), про который говорится. Просто накатываешь MDAC 2.8, и все будет ОК.

Он идет с VS.NET на диске 3, файл называется MDAC_TYP.EXE

Автор: Tomcat 17.3.2005, 20:07
MDAC также можно скачать с сайта microsoft.
Только вот я чего-то не понял, в коде ты System.Data.Odbc используешь, а в сообщении указание на System.Data.OleDb идет? smile

Автор: 3,14 18.3.2005, 10:58
Цитата(arilou @ 17.3.2005, 19:56)
Можно вопрос - а зачем использовать ODBC, если есть System.Data.OleDb?

Плохо знаком с программированеим под винды, а на прогу времени было не очень, первый пример что нашёл тот и использовал
Цитата(Tomcat @ 17.3.2005, 20:07)
Только вот я чего-то не понял, в коде ты System.Data.Odbc используешь, а в сообщении указание на System.Data.OleDb идет?

Неокгда было подробно разбираться, склепал что-то - работает и ладно, будет время изучу по лучше

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)