Freigeben über


IOCTL_GNSS_DELETE_GEOFENCE IOCTL (gnssdriver.h)

Der IOCTL_GNSS_DELETE_GEOFENCE Steuercode wird vom GNSS-Adapter verwendet, um einen zuvor erstellten Geofence zu löschen.

Gilt für GNSS DDI Version 2 und höher.

Hauptcode

IRP_MJ_DEVICE_CONTROL

Eingabepuffer

Ein Zeiger auf eine GNSS_GEOFENCE_DELETE_PARAM Struktur, die den zu löschenden Geofence definiert.

Eingabepufferlänge

Wird auf sizeof(GNSS_GEOFENCE_DELETE_PARAM) festgelegt.

Ausgabepuffer

Wird auf NULL-festgelegt.

Länge des Ausgabepuffers

Auf 0 festgelegt.

Statusblock

Irp->IoStatus.Status auf STATUS_SUCCESS festgelegt ist, wenn die Anforderung erfolgreich ist. Andernfalls Status der entsprechenden Fehlerbedingung als NTSTATUS- Code.

Bemerkungen

NTSTATUS mit den folgenden Hinweisen:

  • STATUS_SUCCESS: Der Treiber hat den Geofence erfolgreich entfernt.

  • STATUS_UNSUCCESSFUL: Fehler, der Geofence kann nicht gelöscht werden.

GNSS-Adapternotizen

Der GNSS-Adapter erwartet nicht, dass dieser Aufruf fehlschlägt, da es keine elegante Möglichkeit gibt, die Folge dieses Fehlers zu bewältigen. Bei Einem Fehler gibt der GNSS-Adapter den befehl GNSS_ResetGeofencesTracking aus und fügt die Geofence-Elemente erneut hinzu.

GNSS-Treibernotizen

Wenn es sich um den letzten Geofence handelt, sollte der GNSS-Treiber die Geofence-Überwachung beenden. Wenn das GNSS-Modul vor dem Löschen des letzten Geofence-Bereichs nicht in der Lage war, Geofences (aufgrund schlechter Signalbedingungen oder anderer vorübergehender Fehler) nachzuverfolgen, sollte die Überwachungsaktivität beendet werden.

Wenn der Geofence-Wert erfolgreich entfernt wurde, gibt der Treiber STATUS_SUCCESS zurück. Wenn der Geofence-Code nicht gelöscht werden kann, wird ein Fehlercode STATUS_UNSUCCESSFUL zurückgegeben. Wenn ein Fehler auftritt, gibt der GNSS-Adapter den befehl GNSS_ResetGeofencesTracking aus und erstellt die gewünschten Geofences neu. Wenn dieser Befehl den zuletzt definierten Geofence löscht, stoppt der Treiber die Geofence-Überwachung.

Anforderungen

Anforderung Wert
Header- gnssdriver.h (include Gnssdriver.h)

Siehe auch

Erstellen von IOCTL-Anforderungen in Treibern

WdfIoTargetSendInternalIoctlOthersSynchronously

WdfIoTargetSendInternalIoctlSynchronously

WdfIoTargetSendIoctlSynchronously