啟動過程 URL
本主題專門說明一項為了在現有應用程式中提供回溯相容性而保留的舊有技術,不建議用於新的開發工作。分散式應用程式應使用 Windows Communication Foundation (WCF) 進行開發。
在應用程式定義域外部的 URL 上發行的伺服器啟動物件,我們稱為已知型別。因此,我們將 URL 稱為已知物件 URL。已知物件 URL 的格式如下所示:
ProtocolScheme :// ComputerName : Port / PossibleApplicationName / ObjectUri
然而,如果您將遠端物件裝載在網際網路資訊服務 (IIS) 中,將無法宣告應用程式名稱,這點請您要特別注意。在此情況下,您的應用程式虛擬目錄會自動成為應用程式名稱。此外,也許會需要其他次要變更。
個別用戶端啟動物件不需要唯一的 URL,因為 .NET 遠端系統會替您產生每個執行個體唯一的 URL。如此一來,用來啟動用戶端啟動物件的 URL 將稱為用戶端啟動過程 URL。用戶端啟動過程 URL 格式如下所示:
ProtocolScheme :// ComputerName : Port / PossibleApplicationName
如果您使用 TcpChannel 物件,則需要通訊埠編號。
如果使用主機應用程式定義域 (而不是 IIS),則您可以程式設計方式來設定可進行遠端處理的型別或是使用組態檔。若要執行後者,您必須呼叫 RemotingConfiguration.Configure 並傳遞組態檔名稱,將值載入檔案中(當您將可遠端處理的型別裝載到網際網路資訊服務 (IIS),將會偵測到 <service> 項目)。雖然您可以針對遠端處理組態檔使用任何檔名,應用程式安全性設定必須包含在具有下列格式名稱的檔案中時,才會強制執行:
<ApplicationName>.<FileExtension>.config
在大多數情況下,建議您使用這種檔案名稱格式。例如,如果您的主機可執行檔名為 MyServer.exe,則組態檔的適當名稱應為 MyServer.exe.config。
不管您選擇哪個檔名,都可以將數個組態檔傳遞至 Configure。在個別檔案中指定通道格式子,與自訂通道的提供者,並將全部註冊到對 Configure 的連續呼叫中,一直是很有用的作法。這樣一來,您就可以複製只處理通道或提供者,或其他自訂功能的組態檔。如果您在 Channels.config
檔案中指定自訂通道樣板,並在 Providers.config
檔案中指定自訂提供者,則可以使用下列程式碼範例中所示的呼叫,來設定您的遠端處理用戶端。
RemotingConfiguration.Configure("Providers.config")
RemotingConfiguration.Configure("Channels.config")
RemotingConfiguration.Configure("RemoteClient.exe.config")
RemotingConfiguration.Configure("Providers.config");
RemotingConfiguration.Configure("Channels.config");
RemotingConfiguration.Configure("RemoteClient.exe.config");