ntddndis.h

来自「用于查询PC机上的USB端口是否有设备挂接上」· C头文件 代码 · 共 2,060 行 · 第 1/4 页

H
2,060
字号
#define OID_TAPI_SELECT_EXT_VERSION				0x0703011B
#define OID_TAPI_SEND_USER_USER_INFO			0x0703011C
#define OID_TAPI_SET_APP_SPECIFIC				0x0703011D
#define OID_TAPI_SET_CALL_PARAMS				0x0703011E
#define OID_TAPI_SET_DEFAULT_MEDIA_DETECTION	0x0703011F
#define OID_TAPI_SET_DEV_CONFIG					0x07030120
#define OID_TAPI_SET_MEDIA_MODE					0x07030121
#define OID_TAPI_SET_STATUS_MESSAGES			0x07030122


//
// ATM Connection Oriented Ndis
//
#define OID_ATM_SUPPORTED_VC_RATES				0x08010101
#define OID_ATM_SUPPORTED_SERVICE_CATEGORY		0x08010102
#define OID_ATM_SUPPORTED_AAL_TYPES				0x08010103
#define OID_ATM_HW_CURRENT_ADDRESS				0x08010104
#define OID_ATM_MAX_ACTIVE_VCS					0x08010105
#define OID_ATM_MAX_ACTIVE_VCI_BITS				0x08010106
#define OID_ATM_MAX_ACTIVE_VPI_BITS				0x08010107
#define OID_ATM_MAX_AAL0_PACKET_SIZE			0x08010108
#define OID_ATM_MAX_AAL1_PACKET_SIZE			0x08010109
#define OID_ATM_MAX_AAL34_PACKET_SIZE			0x0801010A
#define OID_ATM_MAX_AAL5_PACKET_SIZE			0x0801010B

#define OID_ATM_SIGNALING_VPIVCI				0x08010201
#define OID_ATM_ASSIGNED_VPI					0x08010202
#define OID_ATM_ACQUIRE_ACCESS_NET_RESOURCES	0x08010203
#define OID_ATM_RELEASE_ACCESS_NET_RESOURCES	0x08010204
#define OID_ATM_ILMI_VPIVCI						0x08010205
#define OID_ATM_DIGITAL_BROADCAST_VPIVCI		0x08010206
#define	OID_ATM_GET_NEAREST_FLOW				0x08010207
#define OID_ATM_ALIGNMENT_REQUIRED				0x08010208
#define	OID_ATM_LECS_ADDRESS					0x08010209
#define	OID_ATM_SERVICE_ADDRESS					0x0801020A

//
//	ATM specific statistics OIDs.
//
#define	OID_ATM_RCV_CELLS_OK					0x08020101
#define	OID_ATM_XMIT_CELLS_OK					0x08020102
#define	OID_ATM_RCV_CELLS_DROPPED				0x08020103

#define	OID_ATM_RCV_INVALID_VPI_VCI				0x08020201
#define	OID_ATM_CELLS_HEC_ERROR					0x08020202
#define	OID_ATM_RCV_REASSEMBLY_ERROR			0x08020203

//
// PCCA (Wireless) object
//

//
// All WirelessWAN devices must support the following OIDs
//

#define OID_WW_GEN_NETWORK_TYPES_SUPPORTED		0x09010101
#define OID_WW_GEN_NETWORK_TYPE_IN_USE			0x09010102
#define OID_WW_GEN_HEADER_FORMATS_SUPPORTED		0x09010103
#define OID_WW_GEN_HEADER_FORMAT_IN_USE			0x09010104
#define OID_WW_GEN_INDICATION_REQUEST			0x09010105
#define OID_WW_GEN_DEVICE_INFO					0x09010106
#define OID_WW_GEN_OPERATION_MODE				0x09010107
#define OID_WW_GEN_LOCK_STATUS					0x09010108
#define OID_WW_GEN_DISABLE_TRANSMITTER			0x09010109
#define OID_WW_GEN_NETWORK_ID					0x0901010A
#define OID_WW_GEN_PERMANENT_ADDRESS			0x0901010B
#define OID_WW_GEN_CURRENT_ADDRESS				0x0901010C
#define OID_WW_GEN_SUSPEND_DRIVER				0x0901010D
#define OID_WW_GEN_BASESTATION_ID				0x0901010E
#define OID_WW_GEN_CHANNEL_ID					0x0901010F
#define OID_WW_GEN_ENCRYPTION_SUPPORTED			0x09010110
#define OID_WW_GEN_ENCRYPTION_IN_USE			0x09010111
#define OID_WW_GEN_ENCRYPTION_STATE				0x09010112
#define OID_WW_GEN_CHANNEL_QUALITY				0x09010113
#define OID_WW_GEN_REGISTRATION_STATUS			0x09010114
#define OID_WW_GEN_RADIO_LINK_SPEED				0x09010115
#define OID_WW_GEN_LATENCY						0x09010116
#define OID_WW_GEN_BATTERY_LEVEL				0x09010117
#define OID_WW_GEN_EXTERNAL_POWER				0x09010118

//
// Network Dependent OIDs - Mobitex:
//

#define OID_WW_MBX_SUBADDR						0x09050101
// OID 0x09050102 is reserved and may not be used
#define OID_WW_MBX_FLEXLIST						0x09050103
#define OID_WW_MBX_GROUPLIST					0x09050104
#define OID_WW_MBX_TRAFFIC_AREA					0x09050105
#define OID_WW_MBX_LIVE_DIE						0x09050106
#define OID_WW_MBX_TEMP_DEFAULTLIST				0x09050107

//
// Network Dependent OIDs - Pinpoint:
//

#define OID_WW_PIN_LOC_AUTHORIZE				0x09090101
#define OID_WW_PIN_LAST_LOCATION				0x09090102
#define OID_WW_PIN_LOC_FIX						0x09090103

//
// Network Dependent - CDPD:
//

#define OID_WW_CDPD_SPNI						0x090D0101
#define OID_WW_CDPD_WASI						0x090D0102
#define OID_WW_CDPD_AREA_COLOR					0x090D0103
#define OID_WW_CDPD_TX_POWER_LEVEL				0x090D0104
#define OID_WW_CDPD_EID							0x090D0105
#define OID_WW_CDPD_HEADER_COMPRESSION			0x090D0106
#define OID_WW_CDPD_DATA_COMPRESSION			0x090D0107
#define OID_WW_CDPD_CHANNEL_SELECT				0x090D0108
#define OID_WW_CDPD_CHANNEL_STATE				0x090D0109
#define OID_WW_CDPD_NEI							0x090D010A
#define OID_WW_CDPD_NEI_STATE					0x090D010B
#define OID_WW_CDPD_SERVICE_PROVIDER_IDENTIFIER	0x090D010C
#define OID_WW_CDPD_SLEEP_MODE					0x090D010D
#define OID_WW_CDPD_CIRCUIT_SWITCHED			0x090D010E
#define	OID_WW_CDPD_TEI							0x090D010F
#define	OID_WW_CDPD_RSSI						0x090D0110

//
// Network Dependent - Ardis:
//

#define OID_WW_ARD_SNDCP						0x09110101
#define OID_WW_ARD_TMLY_MSG						0x09110102
#define OID_WW_ARD_DATAGRAM						0x09110103

//
// Network Dependent - DataTac:
//

#define OID_WW_TAC_COMPRESSION					0x09150101
#define OID_WW_TAC_SET_CONFIG					0x09150102
#define OID_WW_TAC_GET_STATUS					0x09150103
#define OID_WW_TAC_USER_HEADER					0x09150104

//
// Network Dependent - Metricom:
//

#define OID_WW_MET_FUNCTION						0x09190101

//
// IRDA objects
//
#define OID_IRDA_RECEIVING						0x0A010100
#define OID_IRDA_TURNAROUND_TIME				0x0A010101
#define OID_IRDA_SUPPORTED_SPEEDS				0x0A010102
#define OID_IRDA_LINK_SPEED						0x0A010103
#define OID_IRDA_MEDIA_BUSY						0x0A010104

#define OID_IRDA_EXTRA_RCV_BOFS					0x0A010200
#define OID_IRDA_RATE_SNIFF						0x0A010201
#define OID_IRDA_UNICAST_LIST					0x0A010202
#define OID_IRDA_MAX_UNICAST_LIST_SIZE			0x0A010203
#define OID_IRDA_MAX_RECEIVE_WINDOW_SIZE		0x0A010204
#define OID_IRDA_MAX_SEND_WINDOW_SIZE			0x0A010205
#define OID_IRDA_RESERVED1						0x0A01020A	// The range between OID_IRDA_RESERVED1
#define OID_IRDA_RESERVED2						0x0A01020F	// and OID_IRDA_RESERVED2 is reserved

//
// BPC OIDs
//
#define	OID_BPC_ADAPTER_CAPS					0x0B010100
#define	OID_BPC_DEVICES							0x0B010101
#define	OID_BPC_DEVICE_CAPS						0x0B010102
#define	OID_BPC_DEVICE_SETTINGS					0x0B010103
#define	OID_BPC_CONNECTION_STATUS				0x0B010104
#define	OID_BPC_ADDRESS_COMPARE					0x0B010105
#define	OID_BPC_PROGRAM_GUIDE					0x0B010106
#define	OID_BPC_LAST_ERROR						0x0B020107
#define	OID_BPC_POOL							0x0B010108

#define	OID_BPC_PROVIDER_SPECIFIC				0x0B020109
#define	OID_BPC_ADAPTER_SPECIFIC				0x0B02010A

#define	OID_BPC_CONNECT							0x0B01010B
#define	OID_BPC_COMMIT							0x0B01010C
#define	OID_BPC_DISCONNECT						0x0B01010D
#define	OID_BPC_CONNECTION_ENABLE				0x0B01010E
#define	OID_BPC_POOL_RESERVE					0x0B01010F
#define	OID_BPC_POOL_RETURN						0x0B010110
#define	OID_BPC_FORCE_RECEIVE					0x0B010111

#define	OID_BPC_LAST							0x0B020112

//
// The following OIDs are not specific to a media.
//
// These are objects for Connection-oriented media call-managers and are not
// valid for ndis drivers. Under construction.
//
#define OID_CO_ADD_PVC							0xFE000001
#define OID_CO_DELETE_PVC						0xFE000002
#define OID_CO_GET_CALL_INFORMATION				0xFE000003
#define OID_CO_ADD_ADDRESS						0xFE000004
#define OID_CO_DELETE_ADDRESS					0xFE000005
#define OID_CO_GET_ADDRESSES					0xFE000006
#define OID_CO_ADDRESS_CHANGE					0xFE000007
#define OID_CO_SIGNALING_ENABLED				0xFE000008
#define OID_CO_SIGNALING_DISABLED				0xFE000009
#define	OID_CO_AF_CLOSE							0xFE00000A


//
//	PnP and PM OIDs
//
#define	OID_PNP_CAPABILITIES					0xFD010100
#define	OID_PNP_SET_POWER						0xFD010101
#define	OID_PNP_QUERY_POWER						0xFD010102
#define OID_PNP_ADD_WAKE_UP_PATTERN				0xFD010103
#define OID_PNP_REMOVE_WAKE_UP_PATTERN			0xFD010104
#define	OID_PNP_WAKE_UP_PATTERN_LIST			0xFD010105
#define	OID_PNP_ENABLE_WAKE_UP					0xFD010106

//
//	PnP/PM Statistics (Optional).
//
#define	OID_PNP_WAKE_UP_OK						0xFD020200
#define	OID_PNP_WAKE_UP_ERROR					0xFD020201

//
//	The following bits are defined for OID_PNP_ENABLE_WAKE_UP
//
#define	NDIS_PNP_WAKE_UP_MAGIC_PACKET			0x00000001
#define	NDIS_PNP_WAKE_UP_PATTERN_MATCH			0x00000002
#define	NDIS_PNP_WAKE_UP_LINK_CHANGE			0x00000004
														
//
// Medium the Ndis Driver is running on (OID_GEN_MEDIA_SUPPORTED/ OID_GEN_MEDIA_IN_USE).
//

typedef enum _NDIS_MEDIUM
{
	NdisMedium802_3,
	NdisMedium802_5,
	NdisMediumFddi,
	NdisMediumWan,
	NdisMediumLocalTalk,
	NdisMediumDix,				// defined for convenience, not a real medium
	NdisMediumArcnetRaw,
	NdisMediumArcnet878_2,
	NdisMediumAtm,
	NdisMediumWirelessWan,
	NdisMediumIrda,
	NdisMediumBpc,
	NdisMediumMax				// Not a real medium, defined as an upper-bound
} NDIS_MEDIUM, *PNDIS_MEDIUM;


//
// Hardware status codes (OID_GEN_HARDWARE_STATUS).
//

typedef enum _NDIS_HARDWARE_STATUS
{
	NdisHardwareStatusReady,
	NdisHardwareStatusInitializing,
	NdisHardwareStatusReset,
	NdisHardwareStatusClosing,
	NdisHardwareStatusNotReady
} NDIS_HARDWARE_STATUS, *PNDIS_HARDWARE_STATUS;


//
// this is the type passed in the OID_GEN_GET_TIME_CAPS request
//
typedef struct _GEN_GET_TIME_CAPS
{
	ULONG						Flags;	// Bits defined below
	ULONG						ClockPrecision;
} GEN_GET_TIME_CAPS, *PGEN_GET_TIME_CAPS;

#define	READABLE_LOCAL_CLOCK					0x000000001
#define	CLOCK_NETWORK_DERIVED					0x000000002
#define	CLOCK_PRECISION							0x000000004
#define	RECEIVE_TIME_INDICATION_CAPABLE			0x000000008
#define	TIMED_SEND_CAPABLE						0x000000010
#define	TIME_STAMP_CAPABLE						0x000000020

//
//
// this is the type passed in the OID_GEN_GET_NETCARD_TIME request
//
typedef struct _GEN_GET_NETCARD_TIME
{
	ULONGLONG					ReadTime;
} GEN_GET_NETCARD_TIME, *PGEN_GET_NETCARD_TIME;

//
// Defines the attachment types for FDDI (OID_FDDI_ATTACHMENT_TYPE).
//

typedef enum _NDIS_FDDI_ATTACHMENT_TYPE
{
	NdisFddiTypeIsolated = 1,
	NdisFddiTypeLocalA,
	NdisFddiTypeLocalB,
	NdisFddiTypeLocalAB,
	NdisFddiTypeLocalS,
	NdisFddiTypeWrapA,
	NdisFddiTypeWrapB,
	NdisFddiTypeWrapAB,
	NdisFddiTypeWrapS,
	NdisFddiTypeCWrapA,
	NdisFddiTypeCWrapB,
	NdisFddiTypeCWrapS,
	NdisFddiTypeThrough
} NDIS_FDDI_ATTACHMENT_TYPE, *PNDIS_FDDI_ATTACHMENT_TYPE;


//
// Defines the ring management states for FDDI (OID_FDDI_RING_MGT_STATE).
//

typedef enum _NDIS_FDDI_RING_MGT_STATE
{
	NdisFddiRingIsolated = 1,
	NdisFddiRingNonOperational,
	NdisFddiRingOperational,
	NdisFddiRingDetect,
	NdisFddiRingNonOperationalDup,
	NdisFddiRingOperationalDup,
	NdisFddiRingDirected,
	NdisFddiRingTrace
} NDIS_FDDI_RING_MGT_STATE, *PNDIS_FDDI_RING_MGT_STATE;


//
// Defines the Lconnection state for FDDI (OID_FDDI_LCONNECTION_STATE).
//

typedef enum _NDIS_FDDI_LCONNECTION_STATE
{
	NdisFddiStateOff = 1,
	NdisFddiStateBreak,
	NdisFddiStateTrace,
	NdisFddiStateConnect,
	NdisFddiStateNext,
	NdisFddiStateSignal,
	NdisFddiStateJoin,
	NdisFddiStateVerify,
	NdisFddiStateActive,
	NdisFddiStateMaintenance
} NDIS_FDDI_LCONNECTION_STATE, *PNDIS_FDDI_LCONNECTION_STATE;


//
// Defines the medium subtypes for WAN medium (OID_WAN_MEDIUM_SUBTYPE).
//

typedef enum _NDIS_WAN_MEDIUM_SUBTYPE
{
	NdisWanMediumHub,
	NdisWanMediumX_25,
	NdisWanMediumIsdn,
	NdisWanMediumSerial,
	NdisWanMediumFrameRelay,
	NdisWanMediumAtm,
	NdisWanMediumSonet,
	NdisWanMediumSW56K
} NDIS_WAN_MEDIUM_SUBTYPE, *PNDIS_WAN_MEDIUM_SUBTYPE;


//
// Defines the header format for WAN medium (OID_WAN_HEADER_FORMAT).
//

typedef enum _NDIS_WAN_HEADER_FORMAT
{
	NdisWanHeaderNative,		// src/dest based on subtype, followed by NLPID
	NdisWanHeaderEthernet		// emulation of ethernet header
} NDIS_WAN_HEADER_FORMAT, *PNDIS_WAN_HEADER_FORMAT;


//
// Defines the line quality on a WAN line (OID_WAN_QUALITY_OF_SERVICE).
//

typedef enum _NDIS_WAN_QUALITY
{
	NdisWanRaw,
	NdisWanErrorControl,
	NdisWanReliable
} NDIS_WAN_QUALITY, *PNDIS_WAN_QUALITY;


//
// Defines the state of a token-ring adapter (OID_802_5_CURRENT_RING_STATE).
//

typedef enum _NDIS_802_5_RING_STATE
{
	NdisRingStateOpened = 1,
	NdisRingStateClosed,
	NdisRingStateOpening,
	NdisRingStateClosing,
	NdisRingStateOpenFailure,
	NdisRingStateRingFailure
} NDIS_802_5_RING_STATE, *PNDIS_802_5_RING_STATE;

//
// Defines the state of the LAN media
//
typedef enum _NDIS_MEDIA_STATE
{
	NdisMediaStateConnected,
	NdisMediaStateDisconnected
} NDIS_MEDIA_STATE, *PNDIS_MEDIA_STATE;

//
// The following is set on a per-packet basis as OOB data with NdisClass802_3Priority
//
typedef	ULONG	Priority_802_3;			// 0-7 priority levels

//
//	The following structure is used to query OID_GEN_CO_LINK_SPEED and
//	OID_GEN_CO_MINIMUM_LINK_SPEED. The first OID will return the current
//	link speed of the adapter. The second will return the minimum link speed
//	the adapter is capable of.
//
typedef struct _NDIS_CO_LINK_SPEED
{
	ULONG	Outbound;
	ULONG	Inbound;
} NDIS_CO_LINK_SPEED, *PNDIS_CO_LINK_SPEED;

#ifndef	_NDIS_
typedef	int	NDIS_STATUS, *PNDIS_STATUS;
#endif

//
//	Structure to be used for OID_GEN_SUPPORTED_GUIDS.
//	This structure describes an OID to GUID mapping.
//	Or a Status to GUID mapping.
//	When ndis receives a request for a give GUID it will
//	query the miniport with the supplied OID.
//
typedef struct _NDIS_GUID
{
	GUID			Guid;
	union
	{
		NDIS_OID	Oid;
		NDIS_STATUS	Status;
	};
	ULONG		Size;				//	Size of the data element. If the GUID
									//	represents an array then this is the
									//	size of an element in the array.
									//	This is -1 for strings.
	ULONG		Flags;
} NDIS_GUID, *PNDIS_GUID;

#define	fNDIS_GUID_TO_OID			0x00000001
#define	fNDIS_GUID_TO_STATUS		0x00000002
#define	fNDIS_GUID_ANSI_STRING		0x00000004
#define	fNDIS_GUID_UNICODE_STRING	0x00000008
#define	fNDIS_GUID_ARRAY			0x00000010

//
// Ndis Packet Filter Bits (OID_GEN_CURRENT_PACKET_FILTER).
//

#define NDIS_PACKET_TYPE_DIRECTED				0x00000001
#define NDIS_PACKET_TYPE_MULTICAST				0x00000002
#define NDIS_PACKET_TYPE_ALL_MULTICAST			0x00000004
#define NDIS_PACKET_TYPE_BROADCAST				0x00000008
#define NDIS_PACKET_TYPE_SOURCE_ROUTING			0x00000010
#define NDIS_PACKET_TYPE_PROMISCUOUS			0x00000020
#define NDIS_PACKET_TYPE_SMT					0x00000040
#define NDIS_PACKET_TYPE_ALL_LOCAL				0x00000080
#define NDIS_PACKET_TYPE_GROUP					0x00001000
#define NDIS_PACKET_TYPE_ALL_FUNCTIONAL			0x00002000
#define NDIS_PACKET_TYPE_FUNCTIONAL				0x00004000
#define NDIS_PACKET_TYPE_MAC_FRAME				0x00008000


//
// Ndis Token-Ring Ring Status Codes (OID_802_5_CURRENT_RING_STATUS).
//

#define NDIS_RING_SIGNAL_LOSS					0x00008000
#define NDIS_RING_HARD_ERROR					0x00004000
#define NDIS_RING_SOFT_ERROR					0x00002000
#define NDIS_RING_TRANSMIT_BEACON				0x00001000
#define NDIS_RING_LOBE_WIRE_FAULT				0x00000800
#define NDIS_RING_AUTO_REMOVAL_ERROR			0x00000400
#define NDIS_RING_REMOVE_RECEIVED				0x00000200
#define NDIS_RING_COUNTER_OVERFLOW				0x00000100
#define NDIS_RING_SINGLE_STATION				0x00000080
#define NDIS_RING_RING_RECOVERY					0x00000040


//
// Ndis protocol option bits (OID_GEN_PROTOCOL_OPTIONS).
//

#define NDIS_PROT_OPTION_ESTIMATED_LENGTH		0x00000001
#define NDIS_PROT_OPTION_NO_LOOPBACK			0x00000002
#define NDIS_PROT_OPTION_NO_RSVD_ON_RCVPKT		0x00000004


//
// Ndis MAC option bits (OID_GEN_MAC_OPTIONS).
//

#define NDIS_MAC_OPTION_COPY_LOOKAHEAD_DATA		0x00000001
#define NDIS_MAC_OPTION_RECEIVE_SERIALIZED		0x00000002
#define NDIS_MAC_OPTION_TRANSFERS_NOT_PEND		0x00000004
#define NDIS_MAC_OPTION_NO_LOOPBACK				0x00000008
#define NDIS_MAC_OPTION_FULL_DUPLEX				0x00000010
#define	NDIS_MAC_OPTION_EOTX_INDICATION			0x00000020
#define NDIS_MAC_OPTION_RESERVED				0x80000000

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?