【发布时间】:2012-01-16 17:21:19
【问题描述】:
Visual C++。我必须实现一些绘图和打印功能,这些功能将被合并到(其他开发人员的)COM dll 中。首先,我想使用纯 GDI 来做所有事情,仅此而已,但与 MFC 实现相比,在 GDI 中完成打印和打印预览似乎是一项艰巨的工作。所以我决定专注于MFC。这里有个小问题:我的选择对吗?我的意思是,在没有 MFC 的情况下实现打印(和打印预览)的任何简单方法?
既然我需要 MFC(假设你也同意这一点),我有两个关于如何做的问题:
1)我认为COM dll是ATL项目(不是我的代码,其他一些开发人员独立开发的)。我可以在那个 dll 中启用 MFC 支持吗?在 COM 服务器中使用 MFC 运行时有哪些风险/限制/缺点?如果您建议这样做,我该怎么做?
2) 尽管我想尽可能少地影响第三方 COM 服务器的代码,但我认为将我的代码实现为单独的基于 MFC 的 DLL 并加载和使用该 DLL 可能是更好的方法来自 COM 服务器。你建议这样做吗?在这种情况下有什么风险/限制/缺点?
简而言之,我想在我的代码中使用 MFC 的绘图,尤其是打印功能,它本身应该集成到另一个开发人员的 COM dll 中(它本身用于大型企业应用程序)。我不是COM技术专家,所以我有点困惑。我的最佳选择是什么?
【问题讨论】: