Я пишу общую библиотеку, которая зависит от ODBC. Я хотел бы статически связать библиотеку ODBC, чтобы пользователь моей библиотеки не нуждался в установленной библиотеке ODBC. Однако, когда моя dll связана, она, как представляется, динамически связывается с библиотекой odbc вместо статической привязки к ней (это проверяется с помощью зависимого ходока). Возможно ли статически связать библиотеку с dll?
Я работаю в visual studio 2010. Я использую #pragma comment(lib, "odbc32.lib")
и проверил, что библиотека представляет собой статическую библиотеку, а не библиотеку импорта. Что еще может быть неправильно?
Вам не нужна (и не получается) статическая библиотека; odbc32
является частью операционной системы и, как и все другие компоненты Windows, должен быть динамически связан.
Используя визуальную студию 2015/2017 с консолью /win32 App, она работает с:
#pragma comment(lib, "odbc32.lib")
сразу после #include....
odbc32.lib
в Windows 7 SDK является библиотекой импорта. Что именно вы сделали, чтобы убедиться, что библиотека, которую вы просматриваете, является статической библиотекой?