Metodo ILocation::RequestPermissions (locationapi.h)
[L'API Percorso Win32 è disponibile per l'uso nei sistemi operativi specificati nella sezione Requisiti. È possibile che in versioni successive sia stata modificata o non sia più disponibile. Usare invece l'API Windows.Devices.Geolocation . ]
Apre una finestra di dialogo di sistema per richiedere l'autorizzazione utente per abilitare i dispositivi di posizione.
Sintassi
HRESULT RequestPermissions(
[in] HWND hParent,
[in] IID *pReportTypes,
[in] ULONG count,
BOOL fModal
);
Parametri
[in] hParent
HWND per la finestra padre. Questo parametro è facoltativo e, In Windows 8 la finestra di dialogo è sempre modale se viene fornito hParent e non modale se hParent è NULL.
[in] pReportTypes
Puntatore a una matrice IID . Questa matrice deve contenere ID interfaccia per tutti i tipi di report per i quali si richiede l'autorizzazione. Gli ID interfaccia dei tipi di report validi sono IID_ILatLongReport e IID_ICivicAddressReport. Il conteggio degli ID deve corrispondere al valore specificato tramite il parametro count .
[in] count
Numero di ID dell'interfaccia contenuti in pReportTypes.
fModal
Questo parametro non viene usato.
Valore restituito
Questo metodo può restituire uno di questi valori.
La tabella seguente descrive i codici restituiti quando la chiamata è sincrona.
Codice restituito | Descrizione |
---|---|
|
Servizi di posizione abilitati per l'utente. Il metodo è riuscito. |
|
La piattaforma di posizione è disabilitata. Un amministratore ha disattivato la piattaforma location. |
|
L'utente non ha abilitato l'accesso ai servizi di posizione o ha annullato la finestra di dialogo. |
La tabella seguente descrive i codici restituiti quando la chiamata è asincrona.
Codice restituito | Descrizione |
---|---|
|
L'utente ha abilitato l'accesso ai servizi di posizione. Il metodo è riuscito. |
|
Un argomento non è valido. |
|
La piattaforma di posizione è disabilitata. Un amministratore ha disattivato la piattaforma location. La finestra di dialogo non è stata visualizzata. |
Commenti
Se l'utente sceglie di non abilitare i servizi di posizione, Windows non visualizzerà di nuovo la finestra di dialogo autorizzazioni.
Esempio
Nell'esempio seguente viene illustrato come chiamare RequestPermissions per richiedere l'autorizzazione per i report di latitudine/longitudine.
// Array of report types of interest. Other ones include IID_ICivicAddressReport
IID REPORT_TYPES[] = { IID_ILatLongReport };
// Request permissions for this user account to receive location data for all the
// types defined in REPORT_TYPES (which is currently just one report type)
// The last parameter is not used.
if (FAILED(spLocation->RequestPermissions(
NULL,
REPORT_TYPES,
ARRAYSIZE(REPORT_TYPES),
TRUE)))
{
wprintf(L"Warning: Unable to request permissions.\n");
}
Requisiti
Client minimo supportato | Windows 7 [solo app desktop],Windows 7 |
Server minimo supportato | Nessuno supportato |
Piattaforma di destinazione | Windows |
Intestazione | locationapi.h |
DLL | LocationAPI.dll |