阅读:1963回复:6
连接错误
俺在编译时,有以下的编译错误,不知何因:
pnp.obj() : error LNK2001: unresolved external symbol "__declspec(dllimport) struct _DEVICE_OBJECT * __stdcall IoAttachDeviceToDeviceStack(struct _DEVICE_OBJECT *,struct _DEVICE_OBJECT *)" (__imp_?IoAttachDeviceToDeviceStack@@YGPAU_DEVICE_OBJECT@@PA U1@0@Z) pnp.obj() : error LNK2001: unresolved external symbol "__declspec(dllimport) long __stdcall IoCreateDevice(struct _DRIVER_OBJECT *,unsigned long,struct _UNICODE_STRING *,unsigned long,unsigned long,unsigned char,struct _DEVICE_OBJECT * *)" (__imp_?I oCreateDevice@@YGJPAU_DRIVER_OBJECT@@KPAU_UNICODE_STRING@@KKEPAPAU_DEVICE_OBJECT@@@Z) objchk\i386\usbtest.sys() : error LNK1120: 2 unresolved externals BUILD: Done 1 executable built - 3 Errors 万分感谢! |
|
|
沙发#
发布于:2001-06-28 16:45
你编译其他的驱动,最简单的驱动也会出现这种错误吗?
|
|
|
板凳#
发布于:2001-06-28 17:23
俺的程序本来就是空壳子,
只用到了IoAttachDeviceToDeviceStack,IoCreateDevice,两个历程 |
|
|
地板#
发布于:2001-06-28 17:40
连接器找不到你调用的外部函数。到lib目录看IoCreateDevice()在哪个库文件里,把它加到source里的TARGETLIBS=下面
|
|
地下室#
发布于:2001-06-28 18:27
那你编译是在MS-DOS方式还是在DDK的checked或free构造环境里?
这两个函数是最基本的了,按道理不需要在sources文件里添什么呀。 |
|
|
5楼#
发布于:2001-06-29 10:50
是不是因为这两个例程是C定义的,俺又用VC++编译,所以才会出错?
|
|
|
6楼#
发布于:2001-06-29 13:23
你用vc编译呀,那有一些设置要做,具体偶就不知道了,
你在站上搜索一下,好象有人问过了。 |
|
|