PrivacySetZonePreferenceW 函式 (winineti.h)

設定指定 URLZONEPrivacyType 的隱私權設定。

語法

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

參數

[in] dwZone

DWORD 類型的值,指定要設定隱私權設定的 URLZONE

[in] dwType

DWORD 類型的值,指定要設定隱私權設定的 PrivacyType

[in] dwTemplate

DWORD 類型的值,指定要使用哪一個隱私權範本來設定隱私權設定。

[in, optional] pszPreference

如果 dwTemplate 設定為 PRIVACY_TEMPLATE_CUSTOM,則此參數是自定義喜好設定的字串表示。 否則,它應該設定為 NULL。 此字串表示的描述包含在一節中。

傳回值

如果成功,會傳回零。 否則,會傳回 winerr.h 中定義的其中一個錯誤。

備註

這些因特網區域的隱私權設定位於 [因特網選項] 對話方塊的 [隱私權] 索引卷標上。

設定URLZONE_INTERNET隱私權選項牽涉到同時設定 PrivacyTypes 的隱私權範本。 [因特網選項] 中 [隱私權] 功能表上的滑桿只會同時針對這兩個 PrivacyTypes 設定隱私權時移動。

您可以透過 pszPreference 參數來設定指定 URLZONEPrivacyType 的自定義隱私權喜好設定。 pszPreference 參數可以包含一系列規則,以描述隱私權喜好設定的空格符分隔。 請務必注意,規則本身不能包含空格符。 pszPreference 具有下列結構,其中可以有多個邏輯規則:<簽章><邏輯規則><特殊規則>。

目前,簽章必須設定為 IE6-P3PSettings/V1:。

邏輯規則的格式如下:/<expression>=<decision>/。

表達式是一個布爾語句,由使用邏輯AND) 和的運算子 & (精簡原則令牌所組成! (邏輯 NOT) 。 精簡原則令牌會區分大小寫。 (如需隱私權喜好設定平臺 (P3P) 隱私策略和精簡原則令牌的詳細資訊,請參閱 W3C:隱私權喜好設定平臺 (P3P) 項目 規格。) 決策是單一小寫字元,定義要對 Cookie 採取的動作,其精簡原則包含指定的令牌 () 。 下表列出有效的決策字元。

字元 定義
a 接受 Cookie。
p 提示使用者接受或拒絕 Cookie。
r 拒絕 Cookie。
l 將 Cookie (只傳送到第一方內容) 。
d 如果 Cookie 是持續性 Cookie,請將 Cookie 降級為會話 Cookie。
 

邏輯規則會依照列出的順序進行評估。 要比對的第一個邏輯規則,如果有的話,會決定 Cookie 動作。

也允許空的表達式。 如果表達式是空的,則左側會評估為 true。 這種形式的邏輯規則可以在一組規則的結尾使用,以攔截所有不屬於其他類別的情況。

下列範例顯示有效的邏輯規則。

/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

使用 nopolicy、session 和 always 符號來指定特殊規則。 nopolicy 符號是用來指定沒有壓縮原則時所要採取的動作。 例如 nopolicy=d 指定將所有 Cookie 降級,而不需壓縮原則至會話 Cookie。 工作階段符號是用來指定要在工作階段 Cookie 上採取的動作,而且只能設定為 。 指定 session=a 時,不論精簡原則的內容為何,都會接受所有會話 Cookie。 如果未指定此規則,會話 Cookie 會受限於與持續性 Cookie 相同的規則。 最後,一律會使用 符號來指定 ,以針對所有項目執行相同的動作。 例如,always=d 會指定拒絕所有 Cookie,而不論壓縮原則是否存在。 請注意,always=d 相當於 /=d/。

下列範例顯示隱私權喜好設定字串,指定接受壓縮原則包含 FIN/CONi 令牌配對的 Cookie、拒絕包含 FIN/CON、FIN/CONo、FIN/CONa 和 GOV/PUB 令牌組或 TEL 令牌的 Cookie,以及當 Cookie 的精簡原則包含 UNR 令牌時提示使用者。 它也會指定將沒有精簡原則的 Cookie 降級為會話 Cookie,並接受不符合其中一個指定規則的所有 Cookie。 請注意,評估為 true 的第一個規則會決定 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/

就像 WinINet API 所有其他層面一樣,您無法從 DllMain 或全域物件的建構函式和解構函式安全地呼叫此函式。

注意 WinINet 不支援伺服器實作。 此外,不應該從服務使用它。 對於伺服器實作或服務,請使用 Microsoft Windows HTTP Services (WinHTTP)
 

規格需求

   
最低支援的用戶端 Windows 2000 Professional [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限桌面應用程式]
目標平台 Windows
標頭 winineti.h (包含 Wininet.h)
程式庫 Wininet.lib
Dll Wininet.dll

另請參閱

InternetClearAllPerSiteCookieDecisions

InternetEnumPerSiteCookieDecision

InternetGetPerSiteCookieDecision

InternetSetPerSiteCookieDecision

PrivacyGetZonePreferenceW