我想在我的C#DLL中實現一個COM接口供其他人使用。我已經在foo.idl中定義了一個接口。使用tlbimp而不需要第二個程序集?
我已經通過tlbimp運行foo.idl來生成foo.dll,一個.Net程序集。現在爲了實現我的接口,我可以在我的dll中引用foo.dll來實現接口。
這個效果非常好,只有一個例外:我現在必須分配兩個dll而不是一個dll。這實際上違背了我正在開發的項目的要求:交付一個DLL。
有沒有辦法將tlbimp dll合併到我的,或任何其他方式來做到這一點(在C#中沒有第二個DLL實現COM接口)?
你對此有所反思:只需將接口定義爲C#接口,使用'ComExport'和相關屬性,然後在目標計算機上使用'regasm'來爲COM Interop註冊.NET程序集。 –