У меня проблема с моим проектом Visual Studio 2005 C #. Я использую его под Windows XP, с понедельника. Затем мой ноутбук вышел из строя, и на моем новом я установил 64-разрядную версию Windows 7, и я все еще использую VS 2005.
Нет проблем с компиляцией исходного кода, но когда я запускаю программу, она разбивается на строку ниже
OdbcConnection cn;
cn = new OdbcConnection("dsn=My_dsn_name;");
Я получаю ошибку:
EnrtyPointNotFoundExcepition не был заблокирован
Невозможно найти точку входа с именем «InterlockedIncrement» в DLL «kernel32.dll»
Я пытаюсь подключиться к базе данных Postgres 8.4 с помощью 64-разрядного драйвера PostgresODBC.
Любое решение или обходной путь приветствуются. Я должен подчеркнуть, что решение, которое я создаю, должно работать под Windows XP 32bit.
Обновлена информация о проблеме (из моих ответов на комментарии, но не только):
- Когда я попытался добавить новое соединение в свой проект VS, я получил сообщение ОШИБКА [IM014] [Microsoft] [Диспетчер драйверов ODBC] Указанный DSN содержит несоответствие архитектуры между драйвером и приложением . Я использую 64-битную Windows 7, 64-битную версию Postgres ODBC Driver. 9.00.0200 , Postgres 8.4 32 бит.
- Я никогда раньше не пользовался Ходунком с зависимостями . Но я открыл kernel32.dll из обоих \ system32 и \ SysWOW64 и InterlockedIncrement присутствует в файлах из обеих папок.
- У меня есть TableAdapters , и я использую их для получения данных из Postgres. Он был установлен, когда я использовал WinXP, и он все еще работает. С другой стороны, когда в VS2005 в свойствах TableAdapter я нажимаю " ... " рядом с Data-> CommandText , отображается сообщение Failed вызвать утилиту подключения драйвера ODBC.
РЕДАКТИРОВАТЬ: я добавил пункты 1-3 выше.