c:\program files\advantech\adsapi\include\driver.h(1023) : error C2460: '_DRIVERINFO::far' : uses '_DRIVERINFO', which is being defined
c:\program files\advantech\adsapi\include\driver.h(1022) : see declaration of '_DRIVERINFO'
Здравствуйте, geekay604, Вы писали:
G>есть SDK к некоей плате ввода-вывода, в driver.h есть объявление:
G>typedef struct _DRIVERINFO G>{ G> struct _DRIVERINFO far * pNext; // next device info. address G> ULONG ulDeviceNum; // device number G> HGLOBAL hDriverInfo; // driver info. handle G> USHORT usUsageCount; // usage count G> HINSTANCE hDriverInstance; // driver instance handle G> FARPROC lpfnDriverEntry; // driver entry address G> LONG hDeviceInfo; // deivce info. (Lock data) G>} DRIVERINFO, FAR * LPDRIVERINFO;
G>студия сообщает на это в числе прочего:
G>c:\program files\advantech\adsapi\include\driver.h(1023) : error C2460: '_DRIVERINFO::far' : uses '_DRIVERINFO', which is being defined G> c:\program files\advantech\adsapi\include\driver.h(1022) : see declaration of '_DRIVERINFO'
G>что нужно сделать? по идее, компилиться должно...
Странно, попробуй убрать far, по идее far в студии это пустой макрос, но возможно что в этом месте он не виден.
G>>что нужно сделать? по идее, компилиться должно...
W>Странно, попробуй убрать far, по идее far в студии это пустой макрос, но возможно что в этом месте он не виден.
не хочется — в старом проекте был такой гемор, и я от него избавился, просто не помню как %) да и examples компилятся
хм. на far студия грит "not defined". директивы препроцессора точь-в-точь как на работающем проекте. что ещё смотреть?
Здравствуйте, geekay604, Вы писали:
G>есть SDK к некоей плате ввода-вывода, в driver.h есть объявление:
G>typedef struct _DRIVERINFO G>{ G> struct _DRIVERINFO far * pNext; // next device info. address G> ULONG ulDeviceNum; // device number G> HGLOBAL hDriverInfo; // driver info. handle G> USHORT usUsageCount; // usage count G> HINSTANCE hDriverInstance; // driver instance handle G> FARPROC lpfnDriverEntry; // driver entry address G> LONG hDeviceInfo; // deivce info. (Lock data) G>} DRIVERINFO, FAR * LPDRIVERINFO;
G>студия сообщает на это в числе прочего:
G>c:\program files\advantech\adsapi\include\driver.h(1023) : error C2460: '_DRIVERINFO::far' : uses '_DRIVERINFO', which is being defined G> c:\program files\advantech\adsapi\include\driver.h(1022) : see declaration of '_DRIVERINFO'
G>что нужно сделать? по идее, компилиться должно...
Здравствуйте, geekay604, Вы писали:
G>не хочется — в старом проекте был такой гемор, и я от него избавился, просто не помню как %) да и examples компилятся
G>хм. на far студия грит "not defined". директивы препроцессора точь-в-точь как на работающем проекте. что ещё смотреть?
Здравствуйте, Pavel Dvorkin, Вы писали:
PD>Здравствуйте, geekay604, Вы писали:
PD>компилируется под VS2008 без проблем. PD>Правда, после компиляции AVG заявил, что получившийся EXE содержит вирус .
PD>Попробуй сделать то же, включив свой driver.h и убрав описание этой структуры из моего примера.
PD>Какая студия, кстати ?
студия 2008. да, помогло #include <windows.h>. ёмаё, ну как про это можно было забыть... спасибо! =)