why NDIS MB driver not woring in usb dongle ?

i want connect my application wih usb dongle in NDIS mode . I am using Huwaei 2g dongle (both RAS and NDIS) but RAS connected fine .

INF chnage in virtual adpter :

*IfType = 0x06 ,0x0F3 ; IF_TYPE_ETHERNET_CSMACD | IF_TYPE_WWANPP
*MediaType = 0x00 ,0x09 ; NdisMedium802_3 | NdisMediumWirelessWan
*PhysicalMediaType = 0x0E ,0x01 ; NdisPhysicalMedium802_3 NdisPhysicalMediumWirelessLan

INF chnage in MUX :

HKR, Ndi\Interfaces, UpperRange, , “noupper”
HKR, Ndi\Interfaces, LowerRange, , “nolower”
HKR, Ndi\Interfaces, FilterMediaTypes, , “nolower, ethernet, wan, wlan, ppip”
HKR, Ndi, FilterRunType, 0x00010001, 1
HKR, Ndi, FilterRunType, 0x00010001, 2

filter.cpp chnage :

if (
(AttachParameters->MiniportMediaType != NdisMedium802_3)
&& (AttachParameters->MiniportMediaType != NdisMediumWan)
&& (AttachParameters->MiniportMediaType != NdisMediumNative802_11)
&& (AttachParameters->MiniportMediaType != NdisMediumWirelessWan)
) {
status = NDIS_STATUS_INVALID_PARAMETER;
DbgPrintEx(DPFLTR_IHVNETWORK_ID, DPFLTR_TRACE_LEVEL, “!!! [%p] CFilter::Attach(): unsupported medium\n”, this);
goto Exit;
}

i didn’t implement RAW IP packet . How i implement ? means after/before in which function ? (SendNetBufferLists(),SendNetBufferListsComplete(),ReceiveNetBufferLists() ?)

and my miniport.cpp file contain for NDIS 6.2

ndisMiniportAdapterGeneralAttributes.MediaType = NdisMedium802_3;
ndisMiniportAdapterGeneralAttributes.PhysicalMediumType = NdisPhysicalMediumUnspecified; // NdisPhysicalMedium802_3
ndisMiniportAdapterGeneralAttributes.RecvScaleCapabilities = NULL;
ndisMiniportAdapterGeneralAttributes.AccessType = NET_IF_ACCESS_BROADCAST;
ndisMiniportAdapterGeneralAttributes.DirectionType = NET_IF_DIRECTION_SENDRECEIVE;
ndisMiniportAdapterGeneralAttributes.ConnectionType = NET_IF_CONNECTION_DEDICATED;
ndisMiniportAdapterGeneralAttributes.IfType = IF_TYPE_ETHERNET_CSMACD;
ndisMiniportAdapterGeneralAttributes.IfConnectorPresent = FALSE;

is this correct ? Why i can’t connect with NDIS only ??