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
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