ILocation::SetReportInterval-Methode (locationapi.h)
[Die Win32-Standort-API ist für die Verwendung in den Betriebssystemen verfügbar, die im Abschnitt Anforderungen angegeben sind. Es kann in nachfolgenden Versionen geändert oder entfernt werden. Verwenden Sie stattdessen die Windows.Devices.Geolocation-API . ]
Gibt die angeforderte Mindestdauer in Millisekunden zwischen Berichtsereignissen an.
Syntax
HRESULT SetReportInterval(
[in] REFIID reportType,
[in] DWORD millisecondsRequested
);
Parameter
[in] reportType
REFIID , die den Berichtstyp angibt, für den das Intervall festgelegt werden soll.
[in] millisecondsRequested
DWORD , das den Berichtsintervallwert in Millisekunden enthält. Wenn dieser Wert 0 ist, wird kein Mindestintervall angegeben, und Ihre Anwendung empfängt Ereignisse im Standardintervall des Standortsensors.
Rückgabewert
Die Methode gibt ein HRESULT zurück. Mögliches Werte (aber nicht die Einzigen) sind die in der folgenden Tabelle.
Rückgabecode | BESCHREIBUNG |
---|---|
|
Die Methode wurde erfolgreich ausgeführt. |
|
Der Aufrufer ist nicht registriert, um Ereignisse für den angegebenen Berichtstyp zu empfangen. |
|
reportType war nicht IID_ILatLongReport oder IID_ICivicAddressReport. |
Hinweise
Das Intervall, das Sie mit dieser Methode anfordern, stellt die kürzeste Zeit zwischen Ereignissen dar. Dies bedeutet, dass Sie den Empfang von Ereignisbenachrichtigungen nicht häufiger als angegeben anfordern, aber die verstrichene Zeit kann erheblich länger sein. Verwenden Sie diese Methode, um sicherzustellen, dass Ereignisbenachrichtigungen nicht mehr Prozessorressourcen als erforderlich verwenden.
Es ist nicht garantiert, dass Ihre Anforderung für ein bestimmtes Berichtsintervall vom Standortanbieter festgelegt wird. Rufen Sie GetReportInterval auf, um die richtige Berichtsintervalleinstellung zu ermitteln.
Ein Berichtsintervall von null bedeutet, dass kein Mindestintervall angegeben wird, und die Anwendung kann Ereignisse mit der Häufigkeit empfangen, mit der der Standortsensor Ereignisse sendet.
Beispiele
Im folgenden Beispiel wird veranschaulicht, wie SetReportInterval aufgerufen wird.
// Set the latitude/longitude report interval to 1000 milliseconds
HRESULT hr = spLocation->SetReportInterval(IID_ILatLongReport, 1000);
Anforderungen
Unterstützte Mindestversion (Client) | Windows 7 [nur Desktop-Apps],Windows 7 |
Unterstützte Mindestversion (Server) | Nicht unterstützt |
Zielplattform | Windows |
Kopfzeile | locationapi.h |
DLL | LocationAPI.dll |