RPC_POLICY 結構 (rpcdce.h)
RPC_POLICY 結構包含旗標,可決定在多路計算機上系結,以及使用ncacn_ip_tcp和ncadg_ip_udp通訊協定時的埠配置。
語法
typedef struct _RPC_POLICY {
unsigned int Length;
unsigned long EndpointFlags;
unsigned long NICFlags;
} RPC_POLICY, *PRPC_POLICY;
成員
Length
RPC_POLICY結構的大小,以位元組為單位。 Length 成員允許與此結構的未來版本相容,其中可能包含其他字段。 當您在程式代碼中初始化RPC_POLICY結構時,一律將 Length 設定為 等於 sizeof (RPC_POLICY) 。
EndpointFlags
一組旗標,決定伺服器接收遠端過程調用之埠或埠的屬性。 您可以從指定通訊協定序列的值集使用位 OR 運算子) 指定多個旗標 (。 下表列出 EndpointFlags 成員的可能值。
值 | 意義 |
---|---|
|
指定系統預設值。 |
|
從登錄中定義的其中一個埠配置端點,作為「因特網可用」。 僅適用於 ncacn_ip_tcp 和 ncadg_ip_udp 通訊協定序列。 |
|
從登錄中定義的其中一個埠配置端點,作為「內部網路可用」。 僅適用於 ncacn_ip_tcp 和 ncadg_ip_udp 通訊協定序列。 |
|
當 RPC 伺服器結束時,伺服器進程-接收佇列會自動刪除。 佇列中仍在任何未處理的呼叫都會遺失。 此為預設值。 僅適用於 ncadg_mq 通訊協定序列。 |
|
指定伺服器進程結束之後,伺服器進程接收佇列會持續存在。 預設值是當伺服器進程終止時,會刪除佇列。 僅適用於ncadg_mq通訊協定序列。 |
|
如果接收佇列已經存在,因為先前已開啟為永久佇列,請清除佇列中等候的任何未完成呼叫。 僅適用於ncadg_mq通訊協定序列。 |
|
如果接收佇列已經存在,則請勿修改其現有的驗證或加密設定。 僅適用於ncadg_mq通訊協定序列。 |
|
伺服器行程接收佇列只接受來自用戶端的已驗證呼叫。 預設值是接受已驗證和未驗證的呼叫。 僅適用於ncadg_mq通訊協定序列。 |
|
伺服器的呼叫會加密。 預設值是接受加密和未加密的呼叫。 僅適用於ncadg_mq通訊協定序列。 |
|
伺服器的接收佇列會接受來自用戶端的所有呼叫。 這是預設的驗證層級。 僅適用於 ncadg_mq 通訊協定。 |
|
將伺服器的接收佇列設定為只接受具有驗證層級RPC_C_AUTHN_LEVEL_PKT_INTEGRITY或RPC_C_AUTHN_LEVEL_PKT_PRIVACY的用戶端呼叫。 僅適用於ncadg_mq通訊協定序列。 |
|
將伺服器的接收佇列設定為只接受具有驗證層級RPC_C_AUTHN_LEVEL_PKT_PRIVACY的用戶端呼叫。 系統會忽略具有較低驗證層級的呼叫。 僅適用於ncadg_mq通訊協定序列。 |
注意 如果登錄不包含任何指定預設原則的機碼, 則 EndpointFlags 成員在運行時間不會有任何作用。 如果索引鍵遺失或包含無效的值,則該通訊協定的整個組態會 ( ncacn_ip_tcp、 ncadg_ip_udp 或 ncadg_mq) 標示為無效,而且該通訊協定上所有對 RpcServerUseProtseq* 函式的呼叫都會失敗。
NICFlags
系結至網路適配器的原則 (NIC) 。 下表列出 NICFlags 成員的可能值。
值 | 意義 |
---|---|
|
根據登錄設定系結至 NIC。 當您使用 RPC_POLICY 結構來定義消息佇列屬性時,請一律使用此值。 |
|
覆寫登錄設定,並系結至所有 NIC。 如果登錄遺漏 Bind 機碼, 則 NICFlags 成員在運行時間不會有任何作用。 如果索引鍵包含無效的值,則整個組態會標示為無效,而且 RpcServerUseProtseq* 的所有呼叫都會失敗。 |
備註
您可以使用 RPC_Policy 結構,在運行時間設定遠端過程調用的原則。 這些原則包括:
- 消息佇列:允許伺服器指定消息佇列屬性,例如安全性、傳遞品質,以及伺服器進程佇列的存留期。 此原則只適用於透過消息佇列傳輸 (ncadg_mq) 的遠端呼叫。
- 動態埠的埠配置:指定此應用程式註冊的端點是否應移至因特網可用或內部網路可用的埠集。
- 選擇性系結:允許多路計算機選擇性地系結至 NIC。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 專業版 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
標頭 | rpcdce.h (包含 Rpc.h) |