2

他のアプリケーションで使用する MFC で記述された DLL を作成しています。
プロジェクト設定:
1. スタティック ライブラリで MFC を使用
2. プリプロセッサ: AFXDLL
3. MD ビルド

InitInstance と DLL メインを内部的に呼び出す CWinApp を呼び出す前に、AFX_MANAGE_STATE (AfxGetStaticModuleState()) も使用しました。

このダイアログにはタブがあり、他のすべてのタブが空白になっている最初のタブのみを確認できます。exe と同じ DLL を (必要な変更を加えて) 実行している場合、正常に動作します。
また、AfxGetApp() を呼び出しているときに DLL がクラッシュしますか? 大きな問題は DOMODAL() によるものだと思います。タブコントロールが機能しないという問題が何であるか、誰にもわかりますか?

更新CRichEditCtrlが問題であることがわかりました。ダイアログタブでは、これを削除したときにこれもありましたが、うまくいきました。誰でもこの理由を知ることができます.. InitiInstance() で以前に AfxInitRichEdit2() を使用したことがあります

私はMFCを初めて使用するので、さらに情報が必要な場合はお知らせください

4

2 に答える 2

1

リッチ エディット コントロールを使用する前に、AfxInitRichEdit ()を呼び出す必要があります。

于 2012-07-10T14:47:48.633 に答える
0

EXEAfxInitRichEdit2を呼び出しますか?InitInstance

DLLにも入れてみてくださいInitInstance

于 2012-07-12T07:37:18.137 に答える