0
我想實現的是:如何從非mfc項目的靜態庫中使用MFC對話框類?
我有一個很大的現有項目是非mfc。
我創建了一個靜態庫,其中定義了cdialogs。
我已經讀過,可以在非mfc應用程序中使用這個庫,但我不知道如何。
我讀了很多關於mfc入口點和初始化的信息,這些信息發生在afxwinmain(),InitInstance,run()等等。所以,顯然,這些東西從來都不會在我的應用程序中完成。
任何人都可以提出一個方法來使用我的lib中的cdialogs在主應用程序?
嘗試將所有必要的初始化設置放入MFC庫中的導出包裝過程中,例如將其稱爲'void InitMFC()',然後從非MFC主項目中調用它。如果可能的話(在靜態庫中執行init),那麼你的主項目可以初始化MFC而不需要知道任何關於它的信息。 – sashoalm
所以,你的意思是,我應該導出我自己的函數,初始化這些東西,通常在afxwinmain()中完成。這只是一個假設,或者你知道嗎,它是這樣工作的嗎? –
只是一個假設。但是它不應該太難測試,你可以創建一個靜態庫來初始化MFC,創建一個CDialog,並調用它的DoModal(),所有這些都在一個導出的函數中,以及一個示例非MFC的Win32項目鏈接反對它並調用該函數。你如何鏈接MFC與你的靜態庫?它是作爲DLL鏈接還是靜態鏈接? – sashoalm