2015-07-13 132 views
1

我想用COM Interop創建一個WCF服務,我需要傳遞複雜數據。最好是一組自定義類對象。我不知道如何實現這一點,缺乏體面的例子。WCF COM複雜類型互操作

我只找到#2一個類似的問題在這裏

Calling C# From Unmanaged C++ Passing Or Returning "Complex" Types

然而,該解決方案是隻使用C++/CLI DLL代替,但這不是我的選擇。將靜態調用它的C++應用程序將鏈接到C++運行時,並且我被告知不能更改。

+0

也許這可能是有用的:http://codereply.com/answer/3qkhjy/create-wcf-service-unmanaged-c-clients.html –

+0

所以爲了澄清,你想從一個COM應用程序調用WCF服務?爲什麼你需要com互操作呢? –

回答

1

我想與COM互操作

OK創建一個WCF服務,但是你要調用什麼方向走?對於COM - > .Net,您需要創建一個COM Callable Wrapper。對於.Net - > COM,您需要創建一個Runtime Callable Wrapper

聽起來好像你正在嘗試從COM調用.Net,但這引發了問題,爲什麼你要通過互操作調用WCF服務?如果您想調用該服務,則使用該服務端點並調用它們。

0

方法對我來說還不清楚。 我不是非常確定,但如果你想使用COM組件最好有圍繞COM的包裝(RCW),您指的PIA的(主互操作程序集)

然後同樣的問題也來向我的桌面應用程序, 從你的主項目(WCF服務)引用這個包裝項目,而不是直接引用COM。