小弟想构造在wince下的UVC设备驱动,接连摄像头。用的是微软提供的模板程序。他们在模板中有这样的宏定义:
#define VID_LOGITECH 1133
#define PID_QUICKCAMPRO5000 2245
直接编译:========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========
能通过。
但是把宏的参数改为要驱动的摄像头的ID:
#define VID_LOGITECH 093A
#define PID_QUICKCAMPRO5000 2700
编译后:
1>.\MDD\USBCode.cpp(51) : error C2059: syntax error : 'bad suffix on number'
1>.\MDD\USBCode.cpp(51) : error C2041: illegal digit '9' for base '8'
1>.\MDD\USBCode.cpp(51) : error C2146: syntax error : missing '}' before identifier 'A'
1>.\MDD\USBCode.cpp(51) : error C2146: syntax error : missing '}' before identifier 'A'
1>.\MDD\USBCode.cpp(51) : error C2146: syntax error : missing ';' before identifier 'A'
1>.\MDD\USBCode.cpp(51) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>.\MDD\USBCode.cpp(51) : error C2059: syntax error : 'constant'
1>.\MDD\USBCode.cpp(51) : error C2143: syntax error : missing ';' before '}'
1>.\MDD\USBCode.cpp(51) : error C2059: syntax error : '}'
1>.\MDD\USBCode.cpp(52) : error C2143: syntax error : missing ';' before '{'
。。。。。。。
1>WebCam - 26 error(s), 0 warning(s)
========== Rebuild All: 0 succeeded, 1 failed, 0 skipped ==========
实在搞不明白,为什么仅仅改宏定义的两个ID号会引来这么多error?仅仅是两个数字。
还有,代码是在“USBCode.cpp”文件中。
有熟悉UVC的达人给指条明路吧?谢谢了!
------解决方案--------------------
#define VID_LOGITECH 093A
改成
#define VID_LOGITECH 0x093A
试试。
还有把你的MDD\USBCode.cpp文件中的51行和52行贴出来瞧瞧
------解决方案--------------------
16进制前面不加0x吗