Freigeben über


DBT_DEVICEQUERYREMOVE Ereignis

Das System sendet das DBT_DEVICEQUERYREMOVE Geräteereignis, um die Berechtigung zum Entfernen eines Geräts oder eines Medienteils anzufordern. Diese Meldung ist die letzte Chance für Anwendungen und Treiber, sich auf diese Entfernung vorzubereiten. Jede Anwendung kann diese Anforderung jedoch ablehnen und den Vorgang abbrechen.

Um dieses Geräteereignis zu übertragen, verwendet das System die WM_DEVICECHANGE Nachricht, wobei wParam auf DBT_DEVICEQUERYREMOVE und lParam festgelegt ist, wie im Folgenden beschrieben.

LRESULT CALLBACK WindowProc(
  HWND hwnd,       // handle to window
  UINT uMsg,       // WM_DEVICECHANGE
  WPARAM wParam,   // device-change event
  LPARAM lParam    // event-specific data
);

Parameter

hwnd

Das Fensterhandle

uMsg

Der WM_DEVICECHANGE Nachrichtenbezeichner.

wParam

Legen Sie auf DBT_DEVICEQUERYREMOVE fest.

lParam

Ein Zeiger auf eine Struktur, die das zu entfernende Gerät identifiziert. Die Struktur besteht aus einem ereignisunabhängigen Header, gefolgt von ereignisabhängigen Membern, die das Gerät beschreiben. Um diese Struktur zu verwenden, behandeln Sie die Struktur als DEV_BROADCAST_HDR-Struktur , und überprüfen Sie dann deren dbch_devicetype Member, um den Gerätetyp zu bestimmen.

Rückgabewert

Geben Sie TRUE zurück, um die Berechtigung zum Entfernen eines Geräts zu erteilen.

Geben Sie BROADCAST_QUERY_DENY zurück, um die Berechtigung zum Entfernen eines Geräts zu verweigern.

Bemerkungen

Sie müssen alle Ziehpunkte für das Gerät schließen, sonst tritt beim Entfernen des Geräts ein Fehler auf.

Beispiele

Ein Beispiel finden Sie unter Verarbeiten einer Anforderung zum Entfernen eines Geräts.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows XP
Unterstützte Mindestversion (Server)
Windows Server 2003
Header
Dbt.h

Siehe auch

Geräteereignisse

Geräteverwaltung Ereignisse

DEV_BROADCAST_HDR

WM_DEVICECHANGE