Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: COM/DCOM/ActiveX/ATL/CORBA > Ошибка "unresolved external symbol"


Автор: tri777ki 25.9.2011, 23:16
Есть проект Visual Studio 2010 C++, Windows 7 x64. Проект состоит из одного единственного файла main.cpp с кодом:
 
Код

#include <tuner.h>
#include <atlbase.h>
void main(void)
{
   CComPtr <IDVBSLocator> pDVBSLocator;
   HRESULT hr = pDVBSLocator.CoCreateInstance (CLSID_DVBSLocator);
}
 

При компиляции этого проекта возникает одна единственная ошибка:
 error LNK2001: unresolved external symbol CLSID_DVBSLocator
При этом если через контекстное меню перейти "Go to definition", то попадаем в tuner.h, в котором CLSID_DVBSLocator определен.
 
Подскажите, пожалуйста, в чем может быть дело? 

uuid.lib в Additional Dependencies присутствует, в системе тоже. Поиск дал единственный вариант - прописать полный путь uuid.lib. Прописал, не помогло. Я так подозреваю, скорее всего что-то с настройками самого проекта, но вот что...

Автор: tri777ki 25.9.2011, 23:33
Только задал вопрос, и вскоре нашел решение - uuidof в помощь.

ЗЫ. А вообще, как же оно уже достало, что с каждой новой версией студии, или очередным обновлением sdk или компонентов, частенько перестают работать старые примеры и старый синтаксис...

Автор: spyswamp 15.12.2011, 16:47
Надо было сразу uuidof использовать. Без него разве что helloworld какой-нибудь канает.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)