共用方式為


整合 COM 應用程式概觀

Windows Communication Foundation (WCF) 為 Managed 程式碼開發人員提供了一個資源豐富的作業環境,讓他們可以建立相關應用程式。不過,如果您對 Unmanaged COM 架構程式碼做了大筆投資,而且不想進行移轉,則仍舊可以使用 WCF 服務 Moniker 將 WCF Web 服務直接移轉至現有的程式碼。服務 Moniker 可以從多種 COM 架構開發環境中使用,例如 Office VBA、Visual Basic 6.0 或 Visual C++ 6.0。

ms729739.note(zh-tw,VS.90).gif注意:
服務 Moniker 會在所有的通訊中使用 WCF 通訊通道。該通道的安全性和識別機制不同於標準 COM 和 DCOM Proxy 所使用的機制。此外,服務 Moniker 會使用 WCF 通訊通道,所以任何呼叫的預設逾時期間都是一分鐘。

服務 Moniker 會搭配 GetObject 函式使用,提供 Unmanaged 開發人員強型別且專屬於 COM 的方法來呼叫 WCF Web 服務。這個動作需要有 WCF Web 服務合約的本機 COM 可見定義,以及要使用的繫結。正如其他 WCF 用戶端一樣,雖然在第一次呼叫方法時,COM 程式設計人員看得見這個通道建構過程,但服務 Moniker 仍必須建構服務的型別通道。

與其他 WCF 用戶端共通的是,當使用 Moniker 時,應用程式會將位址、繫結及合約指定為與服務通訊。可以使用下列其中一種方法指定合約:

  • 型別合約:合約會在用戶端電腦上註冊為 COM 可見型別。
  • WSDL 合約:合約會以 WSDL 文件的形式提供。
  • MEX 合約:合約會在執行階段從中繼資料交換 (MEX) 端點擷取。

服務 Moniker 支援的參數

下表顯示服務 Moniker 所支援的參數。

參數 描述

address

服務的 URL 位置。

binding

應用程式組態中的繫結區段名稱。

bindingConfiguration

具名繫結區段中的具名繫結執行個體。

contract

介面識別項 (IID),表示服務合約或合約名稱 (來自 MEX)。

wsdl

WSDL 文件,提供其他形式的合約定義。

spnIdentity

伺服器主要名稱 (SPN) 身分識別,用於與服務進行通訊。

upnIdentity

使用者主要名稱 (UPN) 身分識別,用於與服務進行通訊。

dnsIdentity

DNS 身分識別,用於與服務進行通訊。

mexAddress

服務中繼資料交換 (MEX) 端點的 URL 位置。

mexBinding

要連接 MEX 端點之應用程式組態中的繫結區段名稱。

mexBindingConfiguration

要連接 MEX 端點之具名繫結區段中的具名繫結執行個體。

bindingNamespace

在擷取的 MEX 中,繫結區段名稱的命名空間。

contractNamespace

在擷取的 MEX 中,合約的命名空間。

mexSpnIdentity

伺服器主要名稱 (SPN) 身分識別,用於與 MEX 端點進行通訊。

mexUpnIdentity

使用者主要名稱 (UPN) 身分識別,用於與 MEX 端點進行通訊。

mexDnsIdentity

DNS 身分識別,用於與 MEX 端點進行通訊。

serializer

指定要使用 "xml" 或 "datacontract" 序列化程式。

ms729739.note(zh-tw,VS.90).gif注意:
即使搭配整個 COM 架構用戶端使用,服務 Moniker 仍需要用戶端電腦上安裝 WCF 和支援的 .NET Framework 2.0。此外,使用服務 Moniker 的用戶端應用程式也一定要載入適當版本的 .NET Framework 執行階段。在 Office 應用程式中使用 Moniker 時,可能需要有組態檔來確認是否載入了正確的 Framework 版本。例如,在 Excel 中應將下列文字放入與 Excel.exe 檔案位在相同的目錄下,而且名為 Excel.exe.config 的檔案中:

<?xml version="1.0" encoding="utf-8"?>

<configuration xmlns=https://schemas.microsoft.com/.NetConfiguration/v2.0>

<startup>

<requiredRuntime version="v2.0.50727" />

</startup>

</configuration>

請參閱

工作

HOW TO:註冊和設定服務 Moniker