Я пишу приложение для взаимодействия с базой данных Progress в VB.net. Моя машина для разработки - это 32-битный компьютер с Win 7. У меня есть системный DSN, настроенный для базы данных, которую мне нужно использовать. Поскольку это на 32-битной машине, это 32-битный DSN.
Приложение отлично работает на моем локальном компьютере, проблема возникает, когда я пытаюсь перенести его на одну из наших 64-битных машин. Теперь на 64-битных машинах, похоже, установлен 32-битный драйвер (я открыл C:\Windows\SysWow64\odbcad32.exe
, который, на основе исследований, должен показывать все мои 32-битные системные DSN и все пользовательские DSN) и, по-видимому, такой же DSN (названный так же, и все ) существует в системных DSN.
Я пытался скомпилировать для x86
вместо AllCPUs
, но все равно получаю ошибки. Некоторые ошибки приведены ниже.
Любые предложения о том, как это исправить, чтобы он работал как на 64-битных, так и на 32-битных машинах? Есть ли способ дважды убедиться, что 64-битные машины работают на 32-битных DSN?
Насколько я понимаю, ошибка [IM014] заключается в том, что программа находит DSN на 64-битной машине, но не может его использовать, потому что это 32-битный DSN.
Большинство ошибок для второй ошибки находятся здесь Все коды 08S01 — это «сбои канала связи», IM006 — «сбой SQLSetConnectOption драйвера», и, по-видимому, HY000 имеет около 20 различных значений.
DSN Connection String, Target CPU: AllCPUs, 32 Bit Machine : Runs Fine DSN Connection String, Target CPU: AllCPUs, 64 Bit Machine : Error [IM014] DSN Connection String, Target CPU: x86 , 32 Bit Machine : Runs Fine DSN Connection String, Target CPU: x86 , 64 Bit Machine : Error [HY000] [HYC00] [08S01] [08S01] [08S01] [IM006] 'Yes all of those errors on the last one are from one connection attempt.
DSN=blackring;uid=demo;pwd=demo
все порты и прочее настроено в DSN, и когда я нажимаю "Проверить соединение", они работают нормально. - person PsychoData   schedule 26.03.2014