AtaPortRegistryControllerKeyRead-Funktion (irb.h)
Die AtaPortRegistryControllerKeyRead-Routine liest die Daten, die dem angegebenen Wertnamen unter dem Registrierungsschlüssel HKLM\CurrentControlSet\Services\<service name>\ControllerN
zugeordnet sind, wobei N die Nummer des Controllers ist.
Syntax
BOOLEAN AtaPortRegistryControllerKeyRead(
[in] PVOID ChannelExtension,
[in] UCHAR ControllerNumber,
[in] PCHAR ValueName,
[in] UCHAR ValueType,
[out, optional] PUCHAR Buffer,
PULONG BufferLength
);
Parameter
[in] ChannelExtension
Ein Zeiger auf die Kanalerweiterung.
[in] ControllerNumber
Enthält die Controllernummer.
[in] ValueName
Enthält den Namen des zu lesenden Registrierungswerts.
[in] ValueType
Gibt den Typ der Daten an, die im Registrierungswert enthalten sind. Diesem Parameter sollte einer der in der folgenden Tabelle angegebenen Werte zugewiesen werden.
Werttyp | Bedeutung |
---|---|
IDE_REG_DWORD | Ein numerischer Wert mit 4 Byte. |
IDE_REG_BINARY | Binärdaten. |
IDE_REG_SZ | Eine Unicode-Zeichenfolge mit Null-Endung. |
[out, optional] Buffer
Ein Zeiger auf den Puffer, in den die Ergebnisse kopiert werden sollen.
BufferLength
Ein Zeiger auf die Anzahl der zu kopierenden Datenbytes. Wenn der Vorgang aufgrund eines unzureichenden Puffers fehlschlägt, wird der Speicherort, auf den von Length verwiesen wird, auf die tatsächliche Länge der Daten in der Registrierung aktualisiert.
Rückgabewert
AtaPortRegistryControllerKeyRead gibt TRUE zurück, wenn der Vorgang erfolgreich ist. Andernfalls wird FALSE zurückgegeben. Die AtaPortRegistryControllerKeyRead-Routine gibt auch FALSE zurück, wenn der Miniporttreiber ihn nicht aus der richtigen Routine aufruft.
Hinweise
Der Puffer bei Buffer muss mithilfe von AtaPortRegistryAllocateBuffer zugewiesen werden.
Der Miniporttreiber muss AtaPortRegistryControllerKeyRead entweder in seiner AtaChannelInitRoutine-Routine oder in seiner IdeHwControl-Routine aufrufen. AtaPortRegistryControllerKeyRead kann von keiner anderen Routine aufgerufen werden. Darüber hinaus kann der Miniporttreiber AtaPortRegistryControllerKeyRead nur über seine IdeHwControl-Routine aufrufen, wenn seine IdeHwControl-Routine aufgerufen wurde und im ControlAction-Parameter den Wert StartChannel oder StopChannel hatte.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Desktop |
Kopfzeile | irb.h (include Ata.h, Irb.h) |