【发布时间】:2011-09-05 14:13:30
【问题描述】:
我目前有一个使用 doc/view 架构的 MFC 项目(松散地)。此应用程序包含所有业务逻辑以及 GUI 代码。我希望提供一种类似 API 的访问方式,可以通过 .NET 访问。在这样做时,我想尽量减少重写,所以我想知道选项是什么?
有没有办法在 MFC 应用程序周围合并一个 .NET 界面,同时仍按原样使用 MFC 入口/启动?以便当前应用程序可以运行并让另一个应用程序动态地获取该应用程序的句柄并使用该 API?
还有其他可能更有意义的方法吗?
[编辑] 最终目标是将业务逻辑分解为一个库,并将 GUI 分解为某种新框架(winforms、wpf 等......)现在,我正在寻找实现基本 API 的第一个目标的方法来自第三方应用程序的控制。有了这些知识,是否值得做一个 COM 接口的中间步骤,然后最终将逻辑拉入一个库,为基本的 API 访问编写一个 .net 包装器?
【问题讨论】:
-
听起来您想将该逻辑放入库中,这可能会很棘手,具体取决于您的 gui 与该逻辑的分离程度。如果您要进行重写,请考虑为库直接使用 C++,并保持对 GUI 框架的依赖项处于打开状态。