Funzione PrivacySetZonePreferenceW (winineti.h)

Imposta le impostazioni di privacy per un DETERMINATO URLZONE e PrivacyType.

Sintassi

DWORD PrivacySetZonePreferenceW(
  [in]           DWORD   dwZone,
  [in]           DWORD   dwType,
  [in]           DWORD   dwTemplate,
  [in, optional] LPCWSTR pszPreference
);

Parametri

[in] dwZone

Valore di tipo DWORD che specifica l'URLZONE per cui vengono impostate le impostazioni di privacy.

[in] dwType

Valore di tipo DWORD che specifica privacyType per cui vengono impostate le impostazioni di privacy.

[in] dwTemplate

Valore di tipo DWORD che specifica quale dei modelli di privacy deve essere usato per impostare le impostazioni di privacy.

[in, optional] pszPreference

Se dwTemplate è impostato su PRIVACY_TEMPLATE_CUSTOM, questo parametro è la rappresentazione di stringa delle preferenze personalizzate. In caso contrario, deve essere impostato su NULL. Una descrizione di questa rappresentazione di stringa è inclusa nella sezione Osservazioni.

Valore restituito

Restituisce zero in caso di esito positivo. In caso contrario, viene restituito uno degli errori definiti in winerr.h.

Commenti

Queste impostazioni di privacy per l'area Internet sono disponibili nella scheda Privacy della finestra di dialogo Opzioni Internet .

L'impostazione delle opzioni di privacy per la URLZONE_INTERNET comporta l'impostazione dei modelli di privacy per entrambi i tipi di privacy. Il dispositivo di scorrimento nel menu Privacy in Opzioni Internet si sposta solo se la privacy è impostata per entrambi i Tipi di privacy.

Le preferenze di privacy personalizzate per un DETERMINATO URLZONE e PrivacyType possono essere impostate tramite il parametro pszPreference . Il parametro pszPreference può contenere una serie di regole separate da spazi vuoti che descrivono le preferenze di privacy. È importante notare che le regole stesse non possono contenere spazi vuoti. PszPreference ha la struttura seguente in cui possono essere presenti più regole logiche: <signature><logical-rulespecial-rule>><.

Attualmente, la firma deve essere impostata su IE6-P3PSettings/V1:.

Le regole logiche hanno il formato seguente: /<expression>=<decision>/.

Un'espressione è un'istruzione booleana composta da token di criteri di compattazione che usano gli operatori & (AND logico) e ! (NOT logico). Il token di criteri compatta fa distinzione tra maiuscole e minuscole. Per altre informazioni sui criteri di privacy della piattaforma per le preferenze di privacy (P3P) e sui token di criteri di compattazione, vedere la specifica del progetto W3C: Platform for Privacy Preferences (P3P). La decisione è un singolo carattere minuscolo che definisce l'azione da eseguire sul cookie il cui criterio compatto contiene i token specificati. Nella tabella seguente sono elencati i caratteri decisionali validi.

Carattere Definizione
a Accettare il cookie.
p Richiedere all'utente di accettare o negare il cookie.
r Rifiutare il cookie.
l Guinzaglio il cookie (solo inviarlo in un contesto di prima parte).
d Effettuare il downgrade del cookie, se è un cookie permanente, a un cookie di sessione.
 

Le regole logiche vengono valutate nell'ordine in cui sono elencate. La prima regola logica da associare, se presente, determina l'azione del cookie.

È consentita anche un'espressione vuota. Se un'espressione è vuota, il lato sinistro restituisce true. Questa forma di regola logica può essere usata alla fine di un set di regole per intercettare tutte le situazioni che non rientrano nelle altre categorie.

Gli esempi seguenti mostrano regole logiche valide.

/DEM=d/
    Deny a cookie whose compact policy contains the DEM token
/CON&amp;!TEL=a/	
    Accept a cookie whose compact policy contains the CON token 
    and does not contain the TEL token
/=a/		
    Accept all cookies

Le regole speciali vengono specificate usando i simboli nopolicy, session e always. Il simbolo nopolicy viene usato per specificare l'azione da eseguire quando non sono presenti criteri di compattazione. Ad esempio, nopolicy=d specifica di effettuare il downgrade di tutti i cookie senza un criterio compatto ai cookie di sessione. Il simbolo di sessione viene usato per specificare l'azione da eseguire sui cookie di sessione e può essere impostato solo su un oggetto . Quando si specifica session=a, tutti i cookie di sessione vengono accettati indipendentemente dal contenuto dei criteri di compattazione. Se questa regola non viene specificata, i cookie di sessione sono soggetti alle stesse regole dei cookie persistenti. Infine, il simbolo sempre viene usato per specificare per eseguire la stessa azione per tutti gli elementi. Ad esempio, always=d specifica di negare tutti i cookie indipendentemente dall'esistenza di un criterio compatto. Si noti che always=d equivale a /=d/.

Nell'esempio seguente viene illustrata una stringa di preferenze di privacy che specifica di accettare i cookie per i quali il criterio compatto contiene una coppia di token FIN/CONi, rifiutare i cookie con criteri compatta contenenti FIN/CON, FIN/CONo, FIN/CONa e GOV/PUB o un token TEL e richiedere all'utente quando il criterio compatto di un cookie contiene il token UNR. Specifica inoltre di effettuare il downgrade dei cookie senza un criterio compatto ai cookie di sessione e di accettare tutti i cookie che non corrispondono a una delle regole specificate. Si noti che la prima regola che restituisce true determina l'azione del cookie.

IE6-P3PSettings/V1: /FIN&amp;CONi=a/ /FIN&amp;CONo=r/ /FIN&amp;CONa=r/ /FIN&amp;CON=r/ 
/GOV&amp;PUB=r/ /TEL=r/ /UNR=p/ nopolicy=d /=a/

Come tutti gli altri aspetti dell'API WinINet, questa funzione non può essere chiamata in modo sicuro da DllMain o dai costruttori e distruttori di oggetti globali.

Nota WinINet non supporta le implementazioni del server. Inoltre, non deve essere usato da un servizio. Per le implementazioni del server o i servizi, usare i servizi HTTP di Microsoft Windows (WinHTTP).
 

Requisiti

   
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione winineti.h (include Wininet.h)
Libreria Wininet.lib
DLL Wininet.dll

Vedi anche

InternetClearAllPerSiteCookieDecisions

InternetEnumPerSiteCookieDecision

InternetGetPerSiteCookieDecision

InternetSetPerSiteCookieDecision

PrivacyGetZonePreferenceW