PrivacySetZonePreferenceW 函式 (wininet.h)
設定指定 URLZONE 和 PrivacyType 的隱私權設定。
語法
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 參數來設定指定 URLZONE 和 PrivacyType 的自定義隱私權喜好設定。 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&!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&CONi=a/ /FIN&CONo=r/ /FIN&CONa=r/ /FIN&CON=r/
/GOV&PUB=r/ /TEL=r/ /UNR=p/ nopolicy=d /=a/
就像 WinINet API 所有其他層面一樣,您無法從 DllMain 或全域物件的建構函式和解構函式安全地呼叫此函式。
規格需求
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | wininet.h (包含 Wininet.h) |
程式庫 | Wininet.lib |
Dll | Wininet.dll |
另請參閱
InternetClearAllPerSiteCookieDecisions
InternetEnumPerSiteCookieDecision
InternetGetPerSiteCookieDecision