Freigeben über


PPARALLEL_DESELECT_ROUTINE Rückruffunktion (parallel.h)

Die PPARALLEL_DESELECT_ROUTINE-typierte Rückrufroutine deaktiviert entweder ein IEEE 1284.3-Daisy-Kettengerät oder ein IEEE 1284-End-of-Chain-Gerät, das an einen parallelen Port angeschlossen ist. Der vom System bereitgestellte Funktionstreiber für parallele Ports liefert diese Routine.

Syntax

PPARALLEL_DESELECT_ROUTINE PparallelDeselectRoutine;

NTSTATUS PparallelDeselectRoutine(
  [in] PVOID DeselectContext,
  [in] PVOID DeselectCommand
)
{...}

Parameter

[in] DeselectContext

Zeiger auf die Geräteerweiterung eines funktionalen Geräteobjekts (FDO-), der einen parallelen Anschluss darstellt.

[in] DeselectCommand

Zeiger auf eine PARALLEL_1284_COMMAND Struktur. Der Aufrufer gibt die folgenden Member an:

ID

Gibt die Geräte-ID 1284.3 (Null oder 1) an.

CommandFlags

Gibt ein bitweises ODER von Null oder mehr der folgenden Flags an:

Wert Beschreibung
PAR_END_OF_CHAIN_DEVICE Gibt ein End-of-Chain-Gerät an.
PAR_HAVE_PORT_KEEP_PORT Gibt an, dass der Port zugewiesen wird.

Rückgabewert

Rückgabecode Beschreibung
STATUS_SUCCESS
Das Gerät wurde deaktiviert.
STATUS_INVALID_PARAMETER
Die angegebene Geräte-ID ist ungültig.
STATUS_UNSUCCESSFUL
Der vom System bereitgestellte Funktionstreiber für parallele Ports konnte das Gerät nicht deaktivieren.

Bemerkungen

Um einen Zeiger auf den vom System bereitgestellten PPARALLEL_DESELECT_ROUTINE Rückruf abzurufen, verwendet ein Kernelmodustreiber eine IOCTL_INTERNAL_GET_PARALLEL_PNP_INFO Anforderung, die eine PARALLEL_PNP_INFORMATION Struktur zurückgibt. Das DeselectDevice Member der PARALLEL_PNP_INFORMATION-Struktur ist ein Zeiger auf diesen Rückruf.

Ein Kernelmodustreiber kann eine IOCTL_INTERNAL_DESELECT_DEVICE Anforderung oder den PPARALLEL_CLEAR_CHIP_MODE Rückruf verwenden, um ein Gerät auf einem parallelen Port zu deaktivieren, der durch einen parallelen Port dargestellt wird. Um die Auswahl eines Geräts aufzuheben, sollte einem Anrufer der parallele Port zugewiesen sein. Wenn der Aufrufer das PAR_HAVE_PORT_KEEP_PORT Flag nicht festgelegt hat, gibt der vom System bereitgestellte Funktionstreiber für parallele Ports den parallelen Port frei, nachdem das Gerät deaktiviert wurde.

Weitere Informationen finden Sie unter Auswählen und Deaktivieren eines IEEE 1284-Geräts, das an ein ParallelPort-angeschlossen ist.

Anforderungen

Anforderung Wert
Zielplattform- Desktop
Header- parallel.h (include Parallel.h)
IRQL- <=DISPATCH_LEVEL

Siehe auch

IOCTL_INTERNAL_SELECT_DEVICE

PPARALLEL_TRY_SELECT_ROUTINE

IOCTL_INTERNAL_DESELECT_DEVICE

PARALLEL_PNP_INFORMATION