| 
			 
					阅读:1688回复:2
				 
				落后者加油!望各大虾帮忙!!
					小弟对NTDDK的PACKET程序有点疑惑:
 
							有 PacketReceiveIndicate函数(挂接ReceiveHandler); PacketReceivePacket函数(挂接ReceivePacketHandler)。 这两个函数中需要处理的功能有什么不同? 小弟主要是不懂既然用 NdisTransferData()函数把PACKET传入 用 NdisMoveMappedMemory和IoAllocateMdl、IoBuildPartialMdl把Irp中的MEM转化的MDL中,为什么在PacketReceivePacket中又用NdisCopyFromPacketToPacket把PACKET又拷贝一次? 小弟不懂!  | 
	|
					
						
						
						
						
  | 
	
| 
			 沙发# 
								发布于:2001-09-29 15:33				
			
					ReceiveHandler 
 
							This is a required function. ProtocolReceive is called with a pointer to a lookahead buffer. If this buffer contains less than the full, received network packet, ProtocolReceive calls NdisTransferData with a protocol-allocated packet descriptor specifying protocol-allocated buffer(s) to obtain the remainder of the received packet. ReceivePacketHandler This is an optional function. A ProtocolReceivePacket function should be provided if the protocol driver might be bound to a NIC driver that indicates an array of one or more packets by calling NdisMIndicateReceivePacket 以上是ddk文档的原文, 第二个函数只是在NICdriver管理一个总线dma适配器或者支持带外数据时被ndis调用  | 
	|
| 
			 板凳# 
								发布于:2001-09-30 14:06				
			
					谢谢楼上那位大兄!!令小弟茅塞顿开!
 
							其实小弟也看了DDK文档,只是总觉得不塌实。谢谢!!  | 
	|
					
						
  |