Delen via


Plug and Play Minor IRPs

In deze sectie worden de PnP-IR's beschreven die naar stuurprogramma's worden verzonden. All PnP IRPs have the major function code IRP_MJ_PNP and a minor function code indicating the particular PnP request.

Deze sectie bevat naslaginformatie voor de afzonderlijke IR's. Zie Plug en Play voor een beschrijving van de volgorde waarin de IR's worden verzonden, een discussie over het afhandelen van IR's in DispatchPnP-routines en een algemene bespreking van PnP-concepten en -terminologie.

Voor elke IRP en elk type stuurprogramma is een stuurprogramma vereist voor het afhandelen van het IRP, kan eventueel het IRP verwerken of mag de IRP niet verwerken. Raadpleeg de onderstaande tabel om te bepalen welke IRPs uw stuurprogramma gaat verwerken en raadpleeg vervolgens de referentiepagina's voor informatie over de afzonderlijke IR's. De IRP's worden weergegeven in functionele volgorde in de tabel en in alfabetische volgorde op de IRP-referentiepagina's.

Als een IRP is gemarkeerd als Nee in de tabel voor een bepaald stuurprogramma, mag dat stuurprogramma de IRP niet verwerken. Het stuurprogramma moet de IRP doorgeven aan het volgende stuurprogramma in de apparaatstack, zoals beschreven op de referentiepagina voor de IRP.

De PnP-manager verzendt deze IRP's. PnP-stuurprogramma's kunnen enkele van deze IRP-adressen verzenden, maar alleen de stuurprogramma's die in deze sectie zijn vermeld.

Hier volgen de secundaire functiecodes voor PnP IRPs en de stuurprogrammatypen die deze verwerken:

PnP IRP secundaire functiecode Value Functie- of filterstuurprogramma voor niet-busapparaat Functiestuurprogramma voor busapparaat (voor bus-FDO) Busstuurprogramma of busfilterstuurprogramma (voor onderliggende PPO's)
IRP_MN_START_DEVICE 0x00 Required Required Required
IRP_MN_QUERY_REMOVE_DEVICE 0x01 Required Required Required
IRP_MN_REMOVE_DEVICE 0x02 Required Required Required
IRP_MN_CANCEL_REMOVE_DEVICE 0x03 Required Required Required
IRP_MN_STOP_DEVICE 0x04 Required Required Required
IRP_MN_QUERY_STOP_DEVICE 0x05 Required Required Required
IRP_MN_CANCEL_STOP_DEVICE 0x06 Required Required Required
IRP_MN_QUERY_DEVICE_RELATIONS 0x07
- BusRelations x Optional (1) Required No (2)
- EjectionRelations x No No Optional
- RemovalRelations x Optional Optional No
- TargetDeviceRelation x No No Required
IRP_MN_QUERY_INTERFACE 0x08 Optional Optional Required (1)
IRP_MN_QUERY_CAPABILITIES 0x09 Optional Optioneel of vereist
IRP_MN_QUERY_RESOURCES 0x0A No No Required (1)
IRP_MN_QUERY_RESOURCE_REQUIREMENTS 0x0B No No Required (1)
IRP_MN_QUERY_DEVICE_TEXT 0x0C No No Required (1)
IRP_MN_FILTER_RESOURCE_REQUIREMENTS 0x0D Optional (1) Optional (1) No
IRP_MN_READ_CONFIG 0x0F No No Required (1)
IRP_MN_WRITE_CONFIG 0x10 No No Required (1)
IRP_MN_EJECT 0x11 No No Required
IRP_MN_SET_LOCK 0x12 No No Required (1)
IRP_MN_QUERY_ID 0x13
- BusQueryDeviceID x No No Required
- BusQueryHardwareIDs x No No Optional
- BusQueryCompatibleIDs x No Nee of optioneel
- BusQueryInstanceID x No No Optional
- BusQueryContainerID x No No Required (3)
IRP_MN_QUERY_PNP_DEVICE_STATE 0x14 Optional Optional Optional
IRP_MN_QUERY_BUS_INFORMATION 0x15 No No Required (1)
IRP_MN_DEVICE_USAGE_NOTIFICATION 0x16 Required (1) Required (1) Required (1)
IRP_MN_SURPRISE_REMOVAL 0x17 Required Required Required
IRP_MN_DEVICE_ENUMERATED 0x19 No No Required (1)

(1) Vereist of optioneel in bepaalde situaties. Zie de referentiepagina voor het IRP voor meer informatie.

(2) Bus filter drivers might handle a query for BusRelations.

(3) Ondersteund in Windows 7 en nieuwere versies van Windows.