PORT_CONFIGURATION_INFORMATION 구조체(strmini.h)
PORT_CONFIGURATION_INFORMATION 스트리밍 미니드라이버 디바이스의 하드웨어 설정을 설명합니다. 클래스 드라이버는 운영 체제에서 제공하는 정보로 대부분의 멤버를 채웁니다.
구문
typedef struct _PORT_CONFIGURATION_INFORMATION {
ULONG SizeOfThisPacket;
PVOID HwDeviceExtension;
PDEVICE_OBJECT ClassDeviceObject;
PDEVICE_OBJECT PhysicalDeviceObject;
ULONG SystemIoBusNumber;
INTERFACE_TYPE AdapterInterfaceType;
ULONG BusInterruptLevel;
ULONG BusInterruptVector;
KINTERRUPT_MODE InterruptMode;
ULONG DmaChannel;
ULONG NumberOfAccessRanges;
PACCESS_RANGE AccessRanges;
ULONG StreamDescriptorSize;
PIRP Irp;
PKINTERRUPT InterruptObject;
PADAPTER_OBJECT DmaAdapterObject;
PDEVICE_OBJECT RealPhysicalDeviceObject;
ULONG Reserved[1];
} PORT_CONFIGURATION_INFORMATION, *PPORT_CONFIGURATION_INFORMATION;
멤버
SizeOfThisPacket
이 구조체의 크기(바이트)입니다. 클래스 드라이버가 이 멤버를 채웁니다.
HwDeviceExtension
미니 드라이버의 디바이스 확장에 대한 포인터입니다. 미니 드라이버는 이 버퍼를 사용하여 미니드라이버에 전역 개인 정보를 기록할 수 있습니다. 미니 드라이버는 StreamClassRegisterMinidriver를 통해 자신을 등록할 때 통과하는 HW_INITIALIZATION_DATA 구조에서 이 버퍼의 크기를 설정합니다. 또한 클래스 드라이버는 미니드라이버에 전달하는 HW_STREAM_OBJECT,HW_STREAM_REQUEST_BLOCK 및 HW_TIME_CONTEXT 구조체의 HwDeviceExtension 멤버에서 이 버퍼에 대한 포인터를 전달 합니다.
ClassDeviceObject
드라이버 디바이스에 대한 클래스 드라이버 제공 기능 디바이스 개체(FDO)를 가리킵니다.
PhysicalDeviceObject
클래스 드라이버가 드라이버 스택에 연결되면 드라이버 스택 맨 위에 있는 드라이버의 디바이스 개체를 가리킵니다. 드라이버는 IoCallDriver 를 호출하여 드라이버 스택과 통신할 때 이 멤버를 사용합니다. RealPhysicalDeviceObject 멤버는 드라이버 디바이스의 실제 PDO를 가리킵니다.
SystemIoBusNumber
클래스 드라이버는 이 멤버를 디바이스의 시스템 버스 ID 번호로 채웁니다. 버스 0은 기본 시스템 버스입니다.
AdapterInterfaceType
디바이스가 연결된 시스템 버스의 유형을 지정합니다. 가능한 값으로 는 Isa, Eisa, MicroChannel, PCIBus 및 PCMCIABus가 있습니다.
BusInterruptLevel
클래스 드라이버는 이 버스의 인터럽트에 대해 이 멤버를 IRQL로 채웁니다.
BusInterruptVector
클래스 드라이버는 이 멤버를 디바이스에서 사용하는 인터럽트 벡터로 채웁니다.
InterruptMode
클래스 드라이버는 래치 또는 LevelSensitive 중 하나의 인터럽트 모드로 이 멤버를 채웁니다.
DmaChannel
디바이스가 ISA 버스에 연결되면 클래스 드라이버가 이 멤버를 디바이스의 DMA 채널로 채웁니다.
NumberOfAccessRanges
AccessRanges 배열의 항목 수입니다.
AccessRanges
AccessRanges 배열의 항목 수입니다.
StreamDescriptorSize
미니드라이버가 이 멤버를 HW_STREAM_DESCRIPTOR 구조체의 크기로 채웁니다.
Irp
이 SRB_INITIALIZE_DEVICE 요청을 트리거한 PnP 디바이스 시작 IRP에 대한 포인터입니다.
InterruptObject
디바이스에서 인터럽트 를 사용하는 경우 클래스 드라이버는 연결된 인터럽트 개체에 대한 포인터로 이 멤버를 채웁니다.
DmaAdapterObject
디바이스에서 DMA를 사용하는 경우 클래스 드라이버는 연결된 DmaAdapter 개체에 대한 포인터로 이 멤버를 채웁니다.
RealPhysicalDeviceObject
드라이버 디바이스의 PDO에 대한 포인터입니다.
Reserved[1]
시스템에서 사용하도록 예약되었습니다. 사용하지 마십시오.
설명
대부분의 PORT_CONFIGURATION_INFORMATION 멤버는 인터럽트 벡터 및 인터럽트용 IRQL과 같은 하드웨어 리소스 사용에 대한 정보를 미니드라이버에 제공합니다.
요구 사항
요구 사항 | 값 |
---|---|
헤더 | strmini.h(Strmini.h 포함) |