ICLRHostBindingPolicyManager::ModifyApplicationPolicy 方法
修改指定組件的繫結原則,並建立新版的原則。
語法
HRESULT ModifyApplicationPolicy (
[in] LPCWSTR pwzSourceAssemblyIdentity,
[in] LPCWSTR pwzTargetAssemblyIdentity,
[in] BYTE *pbApplicationPolicy,
[in] DWORD cbAppPolicySize,
[in] DWORD dwPolicyModifyFlags,
[out, size_is(*pcbNewAppPolicySize)] BYTE *pbNewApplicationPolicy,
[in, out] DWORD *pcbNewAppPolicySize
);
參數
pwzSourceAssemblyIdentity
[in] 要修改之組件的識別。
pwzTargetAssemblyIdentity
[in] 已修改組件的新識別。
pbApplicationPolicy
[in] 緩衝區的指標,其中包含要修改之組件的繫結原則資料。
cbAppPolicySize
[in] 要取代的繫結原則大小。
dwPolicyModifyFlags
[in] EHostBindingPolicyModifyFlags 值的邏輯 OR 組合,表示重新導向的控制項。
pbNewApplicationPolicy
[out] 緩衝區的指標,其中包含新的繫結原則資料。
pcbNewAppPolicySize
[in, out] 新繫結原則緩衝區的大小指標。
傳回值
HRESULT | 描述 |
---|---|
S_OK | 已成功修改原則。 |
E_INVALIDARG | pwzSourceAssemblyIdentity 或 pwzTargetAssemblyIdentity 是 Null 參考。 |
ERROR_INSUFFICIENT_BUFFER | pbNewApplicationPolicy 太小了。 |
HOST_E_CLRNOTAVAILABLE | 通用語言執行平台 (CLR) 尚未載入處理序,或 CLR 處於無法成功執行受控程式碼或處理呼叫的狀態。 |
HOST_E_TIMEOUT | 呼叫逾時。 |
HOST_E_NOT_OWNER | 呼叫端未擁有鎖定。 |
HOST_E_ABANDONED | 封鎖的執行緒或 Fiber 在其上等候時,事件遭到取消。 |
E_FAIL | 發生未知的嚴重失敗。 方法傳回 E_FAIL 之後,就無法在處理序中使用 CLR。 後續對裝載方法發出的呼叫會傳回 HOST_E_CLRNOTAVAILABLE。 |
備註
ModifyApplicationPolicy
方法可以呼叫兩次。 第一次呼叫應該為 pbNewApplicationPolicy
參數提供 Null 值。 此呼叫會傳回 pcbNewAppPolicySize
的必要值。 第二次呼叫應該為 pcbNewAppPolicySize
提供此值,並且為 pbNewApplicationPolicy
指向該大小的緩衝區。
規格需求
平台:請參閱系統需求。
標題: MSCorEE.h
程式庫:包含作為 MSCorEE.dll 中的資源
.NET Framework版本:自 2.0 起提供