Использую Visual C++ 2008 и WTL 8.1.
В одном из модулей нужно вызывать функции SetupAPI.
В cpp-файле подключаю заголовочные файлы:
#include <windows.h>
#include <setupapi.h>
#include <devguid.h>
#include <regstr.h>
в одной из функций делаю вызов:
HDEVINFO h_Device_Info_Set = SetupDiGetClassDevs(&GUID_DEVINTERFACE_COMPORT, NULL, NULL, DIGCF_PRESENT | DIGCF_DEVICEINTERFACE);
if (h_Device_Info_Set == INVALID_HANDLE_VALUE)
{
return false;
}
...
...
Компиляция проходит нормально, но при линковке выдается сообщение об ошибке:
...
1>Linking...
1>....obj : error LNK2019: unresolved external symbol __imp__SetupDiGetClassDevsW@16 referenced in function ......
1>Debug\....exe : fatal error LNK1120: 1 unresolved externals
...
В настройках студии "VC++ Directories" в разделах "Include files" и "Library files" пробовал добавлять ссылки на каталоги SDK, установленные студией, так и отдельно мной вручную установленной "Microsoft Platform SDK" для Windows Server 2003 SP1. Т.е. пробовал все каталоги, в которых находил файлы SetupAPI.h, SetupAPI.Lib, и т.п.
Но безрезультатно.
Подскажите плиз куда рыть.
Здравствуйте, Mike0x0, Вы писали:
M>В одном из модулей нужно вызывать функции SetupAPI.
M>Компиляция проходит нормально, но при линковке выдается сообщение об ошибке:
1>>....obj : error LNK2019: unresolved external symbol __imp__SetupDiGetClassDevsW@16 referenced in function ......
Забыл указать Setupapi.lib в списке линкуемых библиотек?