IOCTL_PMI_GET_CONFIGURATION IOCTL (pmi.h)
Die IOCTL_PMI_GET_CONFIGURATION Anforderung gibt Informationen zur aktuellen Konfiguration eines Stromzählers zurück.
Hauptcode
Eingabepuffer
Der AssociatedIrp.SystemBuffer-Member des E/A-Anforderungspakets (IRP) verweist auf einen vom Initiator zugewiesenen Puffer, der sowohl als Eingabepuffer als auch als Ausgabepuffer für die Anforderung verwendet wird. Bei der Eingabe enthält dieser Puffer eine PMI_CONFIGURATION Struktur, in der die Member Version und ConfigurationType auf gültige Werte festgelegt sind. Das ConfigurationType-Element enthält einen PMI_CONFIGURATION_TYPE Enumerationswert, der den Typ der Konfigurationsinformationen angibt, die vom Power Meter abgerufen werden sollen. Dieser Wert bestimmt auch den Typ der Konfigurationsinformationen, die in den Ausgabepuffer geschrieben werden sollen.
Eingabepufferlänge
Das Parameters.DeviceIoControl.InputBufferLength-Element des aktuellen IRP-Stapelspeicherorts (IO_STACK_LOCATION) wird auf die Größe in Bytes des Puffers festgelegt, auf den der AssociatedIrp.SystemBuffer-Member verweist. Diese Größe muss größer oder gleich sizeof(PMI_CONFIGURATION) sein, andernfalls schlägt die Anforderung mit einem Fehler status STATUS_INVALID_PARAMETER fehl.
Ausgabepuffer
Wenn die Anforderung erfolgreich abgeschlossen wurde, enthält der Puffer, auf den das AssociatedIrp.SystemBuffer-Element verweist, eine PMI_CONFIGURATION-Struktur . Diese Struktur enthält die angeforderten Konfigurationsinformationen.
Länge des Ausgabepuffers
Das Parameters.DeviceIoControl.OutputBufferLength-Member des aktuellen E/A-Stapelspeicherorts des IRP wird auf die Größe in Bytes des Puffers festgelegt, auf den vom AssociatedIrp.SystemBuffer-Member verwiesen wird. Damit die Anforderung erfolgreich ist, muss diese Größe größer oder gleich sizeof(PMI_CONFIGURATION) sein. Andernfalls schlägt die Anforderung mit einem Fehler status STATUS_BUFFER_TOO_SMALL fehl.
Statusblock
Das Element Information ist auf die Größe einer PMI_CONFIGURATION-Struktur in Bytes festgelegt.
Der Statusmember ist auf einen der folgenden Werte festgelegt:
STATUS_BUFFER_TOO_SMALL
Das Parameters.DeviceIoControl.OutputBufferLength-Element des IRP ist kleiner als die Größe einer PMI_CONFIGURATION-Struktur in Bytes.
STATUS_INVALID_PARAMETER
Der vom Initiator zugewiesene Eingabepuffer enthält einen ungültigen PMI_CONFIGURATION_TYPE Wert.
STATUS_SUCCESS
Der WDM-Treiber, der die PMI-Schnittstelle unterstützt, hat die IOCTL-Anforderung erfolgreich abgeschlossen.
Hinweise
Die IOCTL_PMI_GET_CONFIGURATION Anforderung fragt die aktuelle Konfiguration des Leistungsmessgeräts ab. Der Eingabe PMI_CONFIGURATION_TYPE Enumerationswerts gibt den Typ der zurückzugebenden Konfigurationsdaten an. Der Datentyp und der Inhalt des Ausgabepuffers variieren je nach den angeforderten Daten.
In der folgenden Tabelle wird der Typ der Daten beschrieben, die für den angegebenen PMI_CONFIGURATION_TYPE Enumerationswert zurückgegeben werden.
PMI_CONFIGURATION_TYPE Wert | BESCHREIBUNG |
---|---|
PmiBudgetingConfiguration | Eine PMI_BUDGETING_CONFIGURATION Struktur, die Informationen zur Budgetierungskonfiguration des Leistungsmessgeräts enthält. |
PmiMeasurementConfiguration | Eine PMI_MEASUREMENT_CONFIGURATION-Struktur , die Informationen zur Messkonfiguration des Leistungsmessgeräts enthält. |
PmiThresholdConfiguration | Eine PMI_THRESHOLD_CONFIGURATION-Struktur , die Informationen zur Schwellenwertkonfiguration des Leistungsmessgeräts enthält. |
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Verfügbar in Windows 7, Windows Server 2008 R2 und höheren Versionen der Windows-Betriebssysteme. |
Kopfzeile | pmi.h (include Pmi.h) |