阅读:5177回复:7
写NDIS协议驱动时候出现问题
今天写NDIS协议驱动,调试的时候报错说是连接错误,无法解析的符号名称:
错误 3 error LNK2019: unresolved external symbol _ProtocolReceiveComplete@4 referenced in function _DriverEntry@8 ndisproto.obj 错误 8 error LNK2019: unresolved external symbol __imp__NdisDeregisterProtocol@8 referenced in function _DriverUnload@4 ndisproto.obj 错误 9 error LNK2019: unresolved external symbol __imp__NdisWaitEvent@8 referenced in function _DispatchCleanup@8 ndisproto.obj 我添加了#pragma comment(lib, "ndis")可是还不能解决 希望大家帮帮我! |
|
沙发#
发布于:2009-09-05 11:02
问题解决啦……
|
|
板凳#
发布于:2009-10-29 21:59
怎么解决在,我在写ndis协议驱动时碰到了同样的问题,不晓得是vs2008的环境没搭好,还是其他的原因,请教。
end.obj : error LNK2019: 无法解析的外部符号 __imp__NdisFreePacket@4,该符号在函数 _NdisProtWrite@8 中被引用 1>recv.obj : error LNK2001: 无法解析的外部符号 __imp__NdisFreePacket@4 1>send.obj : error LNK2019: 无法解析的外部符号 __imp__NdisAllocateBuffer@20,该符号在函数 _NdisProtWrite@8 中被引用 1>recv.obj : error LNK2001: 无法解析的外部符号 __imp__NdisAllocateBuffer@20 1>send.obj : error LNK2019: 无法解析的外部符号 __imp__NdisAllocatePacket@12,该符号在函数 _NdisProtWrite@8 中被引用 1>recv.obj : error LNK2001: 无法解析的外部符号 __imp__NdisAllocatePacket@12 1>send.obj : error LNK2019: 无法解析的外部符号 _memcmp,该符号在函数 _NdisProtWrite@8 中被引用 1>ndisbind.obj : error LNK2001: 无法解析的外部符号 _memcmp 1>debug.obj : error LNK2019: 无法解析的外部符号 __imp__NdisAllocateMemoryWithTag@12,该符号在函数 _ndisprotAuditAllocMem@16 中被引用 1>debug.obj : error LNK2019: 无法解析的外部符号 __imp__NdisFreeMemory@12,该符号在函数 _ndisprotAuditFreeMem@4 中被引用 1>ndisbind.obj : error LNK2001: 无法解析的外部符号 __imp__NdisFreeMemory@12 1>ndisbind.obj : error LNK2019: 无法解析的外部符号 __imp__NdisSetEvent@4,该符号在函数 _NdisProtBindAdapter@20 中被引用 1>ndisbind.obj : error LNK2019: 无法解析的外部符号 __imp__NdisInitializeEvent@4,该符号在函数 _NdisProtBindAdapter@20 中被引用 1>ntdisp.obj : error LNK2001: 无法解析的外部符号 __imp__NdisInitializeEvent@4 1>recv.obj : error LNK2001: 无法解析的外部符号 __imp__NdisInitializeEvent@4 1>ndisbind.obj : error LNK2019: 无法解析的外部符号 __imp__NdisQueryAdapterInstanceName@8,该符号在函数 _ndisprotCreateBinding@12 中被引用 1>ndisbind.obj : error LNK2019: 无法解析的外部符号 __imp__NdisWaitEvent@8,该符号在函数 _ndisprotCreateBinding@12 中被引用 1>ntdisp.obj : error LNK2001: 无法解析的外部符号 __imp__NdisWaitEvent@8 1>recv.obj : error LNK2001: 无法解析的外部符号 __imp__NdisWaitEvent@8 1>ndisbind.obj : error LNK2019: 无法解析的外部符号 __imp__NdisOpenAdapter@44,该符号在函数 _ndisprotCreateBinding@12 中被引用 1>ndisbind.obj : error LNK2019: 无法解析的外部符号 __imp__NdisAllocateBufferPool@12,该符号在函数 _ndisprotCreateBinding@12 中被引用 1>ndisbind.obj : error LNK2019: 无法解析的外部符号 __imp__NdisAllocatePacketPoolEx@20,该符号在函数 _ndisprotCreateBinding@12 中被引用 1>ndisbind.obj : error LNK2019: 无法解析的外部符号 __imp__NdisCloseAdapter@8,该符号在函数 _ndisprotShutdownBinding@4 中被引用 1>ndisbind.obj : error LNK2019: 无法解析的外部符号 __imp__NdisFreeBufferPool@4,该符号在函数 _ndisprotFreeBindResources@4 中被引用 1>ndisbind.obj : error LNK2019: 无法解析的外部符号 __imp__NdisFreePacketPool@4,该符号在函数 _ndisprotFreeBindResources@4 中被引用 1>ndisbind.obj : error LNK2019: 无法解析的外部符号 __imp__NdisDeregisterProtocol@8,该符号在函数 _ndisprotDoProtocolUnload@0 中被引用 1>ndisbind.obj : error LNK2019: 无法解析的外部符号 _NdisRequest@12,该符号在函数 _ndisprotDoRequest@24 中被引用 1>ndisbind.obj : error LNK2019: 无法解析的外部符号 @__security_check_cookie@4,该符号在函数 _ndisprotDoRequest@24 中被引用 1>ntdisp.obj : error LNK2019: 无法解析的外部符号 __imp__NdisRegisterProtocol@16,该符号在函数 _DriverEntry@8 中被引用 1>ntdisp.obj : error LNK2019: 无法解析的外部符号 _WdmlibIoCreateDeviceSecure@36,该符号在函数 _DriverEntry@8 中被引用 1>ntdisp.obj : error LNK2001: 无法解析的外部符号 _SDDL_DEVOBJ_SYS_ALL_ADM_ALL 1>recv.obj : error LNK2019: 无法解析的外部符号 __imp__NdisReturnPackets@8,该符号在函数 _ndisprotServiceReads@4 中被引用 1>recv.obj : error LNK2019: 无法解析的外部符号 __imp__NdisUnchainBufferAtFront@8,该符号在函数 _NdisProtReceive@28 中被引用 1>recv.obj : error LNK2019: 无法解析的外部符号 __imp__NdisCopyFromPacketToPacket@24,该符号在函数 _NdisProtReceivePacket@8 中被引用 |
|
地板#
发布于:2009-10-30 09:22
已经解决!
|
|
地下室#
发布于:2009-11-02 12:43
怎么解决的我也遇到了同样的问题..... 可以告诉我妈? 我mail: 641813113@qq.com
|
|
5楼#
发布于:2009-11-06 13:59
怎么解决的,我也同样遇到了。能不能把解决办法直接写在论坛上,这样以后同样问题的人就知道了。拜托了,这怎么解决的?
|
|
6楼#
发布于:2010-04-08 14:52
怎么解决的啊,助人为乐嘛
|
|
7楼#
发布于:2010-06-13 16:45
遇到这个问题,发现这个帖子不回答。很是气愤。自己解决了。
查看DDK提供的例子。看它是怎么编译的。我发现它的sources文件下多了一句话: TARGETLIBS=$(DDK_LIB_PATH)\ndis.lib 加到我们自己的相应文件下就OK了。 以后如果要添加什么库文件的话,就这样做了。 |
|