Как включить библиотеки ODBC ver 3.0 в мое приложение MFC в Visual C ++ 2010? - PullRequest
0 голосов
/ 11 января 2011
  1. Я создал свой собственный класс-оболочку ODBC, который обрабатывает SQL из приложения C32 Win32.
  2. Я скопировал и добавил (как существующий) этот класс в мое приложение MFC.

Теперь у меня есть ужасные проблемы с нерешенными внешними символами (которых НЕ было в прекрасно работающем приложении Win32), например: «

Ошибка 56
Ошибка LNK2019: неразрешенный внешний символ _SQLSetStmtAttr @ 16ссылка в функции "public: int __thiscall Cosql :: ODBCconnect (char *)" (? ODBCconnect @ Cosql @@ QAEHPAD @ Z) * ​​1010 *

C: \ Documents and Settings ......... \Cosql.obj ApplicationName "

Как мне ПОЛЬЗОВАТЕЛЬНО включить" sqlext.h "(и" sql.h ") из
C: \ Program Files \ Microsoft SDKs \ Windows \ v7.0A в мой MFCприложение или более важно: как разрешить эти внешние символы?

Я единственный, кто пытается ODBC-соединение из приложения MFC и испытывает эту проблему ???: O

Я просто знаю, что функция "SQLSetStmtAttr" там определена только для ODBCVER 3.0 и выше.Что ж !Но КАК мне установить ODBCVER в моем приложении MFC.???Понятия не имею.

РЕДАКТИРОВАТЬ: я понял, что ODBCVER определен: 0x0380 (так, версия 3.8), все функции определены правильно, в том числе: sql.h и sqlext.h,

РЕДАКТИРОВАТЬ II: Связывание ОШИБКА сохраняется, когда я преобразовываю все эти методы (объект) в чистые функции, используя некоторые глобальные переменные!

Заранее спасибо.

1 Ответ

0 голосов
/ 24 января 2011

решаемая.

Решение: я создал DLL из своего класса ODBC, а затем использовал ее в своем проекте. Теперь он компилируется независимо, поэтому он больше не ограничивает несовместимую среду друг друга и настройки компилятора!

...