Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / открытие БД MS Access в WinXP x64 через oleDbConnection / 5 сообщений из 5, страница 1 из 1
23.09.2007, 11:57
    #34819853
DenisArd
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открытие БД MS Access в WinXP x64 через oleDbConnection
Есть программа (не моя) под .NET, работающая c БД MS Access. Соединение с БД устанавливается следующим кодом (получен декомпиляцией):

Код: plaintext
1.
2.
3.
4.
5.
6.
oleDbConnection.ConnectionString := String.Concat('Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Registry Path=;Jet OLEDB:Database Locking Mode=1;Data Source="', path, '";Mode=Share Deny None;Jet OLEDB:Engine Type=5;Provider="Microsoft.Jet.OLEDB.4.0";Jet OLEDB:System database=;Jet OLEDB:SFP=False;persist security info=False;Extended Properties=;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Create System Database=False;Jet OLEDB:Don''t Copy Locale on Compact=False;User ID=Admin;Jet OLEDB:Global Bulk Transactions=1');
    try
        oleDbConnection.Open
    except
        on exception: Exception do
            raise Error.Create(ClassName, FuncName, 'Не могу открыть базу', exception)
    end
Под 32-битной виндой работает на ура, а вот в 64-битной версии - 'Не могу открыть базу'.
Проблема видимо в Jet: не то, чтобы его совсем не было, но оно устанавливается в 32-битной подсистеме, (в реестре соответствующие ключи находятся в HKLM\SOFTWARE\Wow6432Node\Microsoft\Jet, а не в HKLM\SOFTWARE\Microsoft\Jet) и 64-битный .NET Framework его похоже не видит.
Есть ли способ решения данной проблемы?
PS На сайте Microsoft есть обновления Microsoft Jet только для 32-битных систем. Получается под .NET x64 с БД вообще нельзя работать?
...
Рейтинг: 0 / 0
23.09.2007, 15:17
    #34819995
Bigheadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открытие БД MS Access в WinXP x64 через oleDbConnection
Обсуждалось уже на этом форуме.
JET под 64-битные платформы нет.
...
Рейтинг: 0 / 0
23.09.2007, 15:34
    #34820015
DenisArd
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открытие БД MS Access в WinXP x64 через oleDbConnection
Bigheadman
JET под 64-битные платформы нет.

Здорово! Вот тебе и переносимость на другую платформу.

А есть ли какой-либо альтернативный способ доступа к БД MS Access на 64-битной платформе .NET?
...
Рейтинг: 0 / 0
24.09.2007, 00:03
    #34820337
Bigheadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открытие БД MS Access в WinXP x64 через oleDbConnection
авторВот тебе и переносимость на другую платформу.Вы это про .NET? Так .NET тут непричем. Jet не является частью .NET.
P.S. переносимость у .NET не следует понимать в наличии реализаций .NET под другие платформы, а в самой возможности таких реализаций. Кому нужно будет, тот реализует.
...
Рейтинг: 0 / 0
25.09.2007, 18:26
    #34825638
DenisArd
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
открытие БД MS Access в WinXP x64 через oleDbConnection
Ура! Заработало! Remotesoft .NET Linker and Mini-Deployment Tool рулит! С его помощью можно под 64 битной виндой запустить .net-программу в родной 32 битной среде.
...
Рейтинг: 0 / 0
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / открытие БД MS Access в WinXP x64 через oleDbConnection / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]