【发布时间】:2015-05-21 22:56:49
【问题描述】:
我们有一组原生 C++ 业务规则,它们封装在 C++/CLI 中,然后由 C# 层封装,因此我们可以通过 DCOM 公开它。
Native C++ 业务规则位于 DLL 中,并且可以在 COM 可见 DLL 中的 C++/CLI 中轻松调用。然后我们将此 DLL 添加为对 C# 项目的引用。
C# 层有很多派生自 ServicedComponent 的类,我们应用 regsvcs 将其注册为 DCOM 服务器。
但是,C++/CLI 层需要与 C# 层进行通信。为此,我正在考虑使用 C# 风格的界面。 C# 层将从接口派生,并将其传递给 C++/CLI 层,然后 C++/CLI 层可以调用其上的方法以在 C# 层中发生某些事情。这个接口需要在 C++/CLI 层中声明,但为了可见性。这是我的问题,我似乎无法做到这一点。
有没有办法在 C++/CLI 中声明一个 C# 风格的接口,然后在 C# 中使用它?
【问题讨论】:
-
"Managed C++" 指的是带有托管扩展的 Visual C++,就像在 Visual Studio .NET 2003 中一样。您可能指的是它的后续 C++/CLI。如果是这样,请改写并更改标签。
-
已按建议更改。