GUID的外部定义和内部定义
2010-08-10 14:06
726 查看
(已解决!GUID的外部定义和内部定义)VC编译错误:error LNK2001: unresolved external symbol _GUID_DEVINTERFACE_USB_DEVICE
编译错误 2008-10-08 09:56:25 阅读319 评论0 字号:大中小兜了一大圈后,回到原点,再次思索如何解决。
先看上次的结果:“自己定义之后,提示重复链接;不自己定义,包含initguid.h,又提示其他的GUID重复定义;不自己定义,也不包含,提示没有链接到lib。”
此次,再次编译时,我想到一个折衷的办法,既能保证“其他的GUID”不重复定义,又能保证GUID_DEVINTERFACE_USB_DEVICE被定义。如下:
#include <winioctl.h>
#include <setupapi.h>
#include <initguid.h>
DEFINE_GUID(GUID_DEVINTERFACE_USB_DEVICE,
0xA5DCBF10L, 0x6530, 0x11D2, 0x90, 0x1F, 0x00, 0xC0, 0x4F, 0xB9, 0x51, 0xED);
#define GUID_CLASS_USB_DEVICE GUID_DEVINTERFACE_USB_DEVICE
上述代码的原理很简单。在调用其他的GUID时,即包含winioctl.h文件时,不使用INITGUID,外部定义;在调用其他的GUID之后,再包含initguid.h,即,定义INITGUID,此后再定义自己的GUID,就是使用了内部定义。
如此一来,同时使用内部定义和外部定义,完美解决!
://blog.csdn.net/lxiongh/archive/2010/03/05/5350329.aspx
相关文章推荐
- (已解决!GUID的外部定义和内部定义)VC编译错误:error LNK2001: unresolved external symbol _GUID_DEVINTERFACE_USB_DEVICE
- C++ 概念两则(声明和定义、内部连接和外部连接)
- spring JavaBean引入JavaBean ( 外部引用, 内部定义, 级联属性 )
- 【Java】内部类访问的外部变量定义成final (数据保持一致,外部修改后无法通知内部,编译的时候会通过构造方法传进来) Java内部类一般访问不了外部变量
- CSS 定义方式——(内联,内部,外部)
- java内部静态类和非静态类,和他们在外部的定义
- 外部样式OL LI的定义 影响到了富文本框内的UL LI的定义,使用内部样式对其还原
- 在定义了外部layout的事件后,处理内部所包含的部件的事件时没触发。
- C++ primer学习1:细节:标准化后C++中,定义在for循环内部的变量,循环外部不可使用
- java中在类的内部定义接口有什么好处?这和在外部直接定义有什么区别?越详细越好?
- html的三种样式定义方式:外部样式表;内部样式表;内联样式表
- 转:java内部静态类和非静态类,和他们在外部的定义
- “位域”与结构体内部对齐、结构体外部对齐(自己定义的)
- xml(在内部定义,上一篇是在外部引入)
- 简单讲解C++的内部和外部函数以及宏的定义
- Windows7提示Ping不是内部或外部命令的解决方法
- 内部方法引用外部方法的参数
- 安装好grunt,cmd 提示"grunt不是内部或外部命令" 怎么办?
- STM32使用内部振荡器及其和外部晶体振荡器的区别
- 函数_内部&外部/全局&局部_函数/变量