Использование DSN + 32-битных драйверов

8926
Kristiaan

Мне нужен совет, так как я столкнулся с проблемой, и до сих пор не смог найти решение.

У нас есть набор отчетов, разработанных в MS Excel, которые используют файл DSN для подключения к источникам данных для извлечения данных. Они отлично работают на 32-битных и 64-битных системах.

Тем не менее, мы переходим к среде терминального сервера с использованием Windows 2008 R2 64Bit

Отчеты не запускаются с использованием DSN в этой среде, если у нас только 32-битные драйверы установлены и настроены в настройках ODBC. Как только мы установим 64-битные драйверы, программное обеспечение будет работать.

Есть ли способ или способ заставить Excel или файл DSN НЕ использовать 64-битный драйвер, но заставить его использовать 32-битный драйвер?

1

2 ответа на вопрос

2
ta.speot.is

мы переходим к терминальной серверной среде с использованием Windows 2008 R2 64Bit.

Само по себе это не вызовет проблем, вам нужно установить 64-разрядную версию Microsoft Office 2010. У вас должна быть веская причина для установки 64-разрядной версии, Microsoft устанавливает 32-разрядную версию по умолчанию в 64-битные машины по причине - вещи перестают работать.

Есть ли способ / метод получения Excel или DSN-файла, чтобы НЕ использовать 64-битный драйвер, но заставить его использовать 32-битный драйвер.

Нет, но для подключения в приложениях Office просто установите 64-разрядную версию ACE и убедитесь, что ссылки на строки подключения указаны Microsoft Access Driver (*.mdb, *.accdb).

SQL Server, Oracle и целый ряд других распространенных СУБД имеют 64-разрядные драйверы ODBC, поэтому я не вижу, как между 64-разрядным ACE и собственным клиентом / ODAC SQL вы не можете подключиться к чему-либо.

Если это все еще не работает, в этом сообщении на форуме есть механизм общего назначения для «проксирования» x64 -> x86 через связанные серверы SQL Server . При необходимости замените Microsoft.Jet.OLEDB.4.0и другие параметры (чтобы сделать его связанным сервером через ODBC, а не ODBC) с вашим поставщиком ODBC.

Привет, Тодда, спасибо за ответ, касающийся моей проблемы, я знал, что могу установить 64-битные драйверы и получить доступ к системе таким образом, однако в настоящее время мы тестируем наши системы в рамках TS в качестве доказательства концепции перед их развертыванием вживую. Идея установки 64-битных драйверов вместе с необходимыми 32-битными драйверами привела бы к повторному тестированию приложений, чтобы убедиться в отсутствии проблем совместимости между двумя наборами драйверов. К сожалению, не желая «повозиться» с настройками реестра, кажется, что это единственный реальный маршрут, поэтому в настоящее время мы проводим повторное тестирование. Kristiaan 12 лет назад 0
1
nixda

OP answered his own question

Sadly there is no way to-do what i want to-do, without a lot of very nasty and not 100% perfect reg hacks.

If you need to access 32bit ODBC data sources the application in question has to be 32Bit.

here is a link to just one forum post i found relating to this type of problem, it appears the only way i would be able to accomplish this is to remove the 64bit version of office and install the 32bit version instead of it.

http://social.msdn.microsoft.com/Forums/en-US/accessdev/thread/5108f337-f06a-4518-afe3-d3c1abd040ef/