共用方式為


設定埠配置和選擇性系結的登錄

從 Windows 2000 開始,應該使用名為 Rpccfg.exe 的 Windows 資源套件中的公用程式來設定系結。 如需詳細資訊,請參閱適用于適當作業系統版本的 Windows 資源套件。

針對 Windows 2000 之前的 Windows 版本,下表中的登錄機碼會指定動態埠配置的系統預設值,以及系結至多路電腦上的 NIC。 您必須先建立這些金鑰,然後指定適當的設定。

使用 RpcServerUseProtseqEx 函式會影響這些設定。 開發人員應該熟悉本節所述的登錄設定,以及管理埠配置時的 RpcServerUseProtseqEx 函式。 有三個假設應用程式的範例遵循下表,並說明這些設定和 RpcServerUseProtseqEx 函式互通的方式。

如果索引鍵遺失或包含無效值,則整個設定會標示為無效,而且所有透過ncacn_ip_tcpncadg_ip_udpRpcServerUseProtseq*呼叫都會失敗。

注意

配置給進程的埠會維持配置,直到該進程終止為止。 如果所有可用的埠都正在使用中,函式會傳回RPC_S_OUT_OF_RESOURCES。

 

埠金鑰 資料類型 描述
HKEY_LOCAL_MACHINE   Software      Microsoft         Rpc            Internet               Ports
REG_MULTI_SZ 指定一組 IP 埠範圍,其中包含所有可從網際網路取得的埠,或網際網路無法使用的所有埠。 每個字串都代表單一端口或一組內含的埠 (,例如 1000-1050、1984) 。 如果任何專案超出範圍 0 到 65535,或無法解譯任何字串,RPC 執行時間會將整個設定視為無效。
HKEY_LOCAL_MACHINE   Software      Microsoft         Rpc            Internet               PortsInternetAvailable
REG_SZ Y 或 N (不區分大小寫) 。 如果為 Y,則埠金鑰中列出的埠都是該電腦上的所有網際網路可用埠。 如果為 N,則埠金鑰中列出的埠全都是無法使用網際網路的埠。
HKEY_LOCAL_MACHINE   Software      Microsoft         Rpc            Internet               UseInternetPorts
REG_SZ Y 或 N (不區分大小寫) 。 指定系統預設原則。 如果為 Y,則使用預設值的進程將會從一組網際網路可用的埠指派埠,如上面所定義。 如果為 N,則使用預設值的進程將會從僅限內部網路埠集指派埠。
HKEY_LOCAL_MACHINE   System      CurrentControlSet         Services            Rpc               Linkage                  Bind
REG_MULTI_SZ 列出預設要系結之所有 NIC 的裝置名稱 (,例如 \Device\AMDPCN1) 。 如果機碼不存在,伺服器將會系結至所有 NIC。 如果金鑰存在,除非 NICFlags 欄位設定為 RPC_C_BIND_TO_ALL_NICS,否則伺服器會系結至金鑰中指定的 NIC。 如果索引鍵具有 null (「」「) 值,則組態將會標示為無效,而且所有對 RpcServerUseProtseq* 的呼叫都會透過 ncacn_ip_tcpncadg_ip_udp 失敗。

 

下表說明三個範例應用程式如何受到上表中定義的設定影響,以及如何使用 RpcServerUseProtseqEx 函式套用的設定也會受到影響。

在此範例中,會考慮三個假設性應用程式:

下表說明這些設定的影響,取決於上表所說明登錄專案中所指定的值。 針對格式化考慮,系統會指派下列程式碼:

PIA = PortsInternetAvailable 金鑰值

UIP = UseInternetPorts 金鑰值

針對此範例,埠索引鍵的值是每個專案的 5000-5100。

Application PIA UIP 結果
InternetApp Y Y 使用介於 5000 到 5100 之間的埠
LocalApp Y Y 使用 5000-5100 範圍以外的埠
DefaultApp Y Y 使用介於 5000 到 5100 之間的埠
InternetApp Y N 使用介於 5000 到 5100 之間的埠
LocalApp Y N 使用 5000-5100 範圍以外的埠
DefaultApp Y N 使用 5000-5100 範圍以外的埠
InternetApp N Y 使用 5000-5100 範圍以外的埠
LocalApp N Y 使用介於 5000 到 5100 之間的埠
DefaultApp N Y 使用 5000-5100 範圍以外的埠
InternetApp N N 使用 5000-5100 範圍以外的埠
LocalApp N N 使用介於 5000 到 5100 之間的埠
DefaultApp N N 使用介於 5000 到 5100 之間的埠

 

RPC_POLICY

RpcServerUseAllProtseqsEx

RpcServerUseAllProtseqsIfEx

RpcServerUseProtseqEx

RpcServerUseProtseqEpEx

RpcServerUseProtseqIfEx

ncacn_ip_tcp

ncadg_ip_udp