Поддержка доступа к Microsoft Access с разных платформ

Рейтинг: 1Ответов: 1Опубликовано: 25.03.2015

Здравствуйте! Вот несколько конфигураций.


Разрядность - 32 бит

Установлен Access 2010 32 бит

Установлен Microsoft Access Database Engine 32 бит

Программа скомпилирована в 32 бит

Программа работает, без проблем подключается к базе данных.


Разрядность - 32 бит

Не установлен Access 2010 32 бит

Установлен Microsoft Access Database Engine 32 бит

Виртуальная машина.

Программа скомпилирована в 32 бит

Программа работает, без проблем подключается к базе данных.


Разрядность - 64 бит

Установлен Access 2010 64 бит

Установлен Microsoft Access Database Engine 64 бит

Программа скомпилирована в 32 бит

Программа работает, без проблем подключается к базе данных


Разрядность - 64 бит

Установлен Access 2010 32 бит

Установлен Microsoft Access Database Engine 32 бит (при этом 64 бит не устанавливается)

Программа скомпилирована в 32 бит

Программа не работает, не может подключиться к базе.


Какие есть идеи? Программа написана на C# в Visual Studio 2012. У заказчика установлен Microsoft Access именно в такой конфигурации. Как заставить программу работать?

Делается две попытки подключения к базе. В первый раз провайдер - Microsoft.Jet.OLEDB.4.0, во второй раз - Microsoft.ACE.OLEDB.12.0.

Ошибка:

System.InvalidOperationException: Поставщик "Microsoft.ACE.OLEDB.12.0" не зарегистрирован на локальном компьютере.

В журнале событий записей нет.

Ответы

▲ 1

Запустите инсталлятор ещё раз, выберите режим repair. Если не поможет - повторите с другим инсталлятором.