我想要实现的目标:
我有一个很大的现有项目,非mfc。
我创建了一个静态库,其中定义了cdialogs。
我已经读过,可以在非mfc应用程序中使用这个lib,但我不知道怎么做。
我读了很多关于mfc入口点和初始化的内容,它发生在afxwinmain(),InitInstance,run()等等。所以,显然,这些东西永远不会在我的应用程序中完成。
有人可以建议在主应用程序中使用我的lib中的cdialogs的方法吗?
答案 0 :(得分:1)
由于@satuon,你的假设到目前为止已经奏效了。
我实际上将afxwinmain()函数中的mfc代码复制到我的静态lib中的一个函数中(在我的例子中,是一个cwinapp方法)。
在我的主应用程序中,我将cwinapp对象声明为外部对象。然后,我只需调用theApp.InitMFC()就可以了。
示例:
extern MyCWinApp theApp;
theApp.InitMFC();
就我而言,应用程序是全球性的。