Views Foundation > 既存の Rogue Wave Views コードから ActiveX コントロールを作成する > MFC ライブラリーで ActiveX コントロールを作成する
 
MFC ライブラリーで ActiveX コントロールを作成する
このチュートリアルには、4 つの手順があります。
*手順 1:プログラムの準備
*手順 2:MFC で ActiveX コントロールを作成する
*手順 3:ActiveX コントロールへカスタム・プロパティーを追加する
*手順 4:ActiveX コントロールへカスタム・イベントを追加する
第 2 手順で作成する基本 ActiveX コントロールは、このチュートリアルがさらに進行するに従って、より多くの機能を統合するために強化されます。
メモ: ウィザードによって生成されたファイルに含まれる次のコメントは、Rogue Wave Views 用に変更または追加されたコード行を示します。
// Added for Rogue Wave Views
// End Added for Rogue Wave Views
警告:  
このチュートリアルを開始する前に、ActiveX コントロールの構築に当たっては、いくつかの問題が起きる可能性のあることをあらかじめご承知ください。たとえばある理由で、_DllMainnewdelete のような記号は、しばしばリンク時に定義されることがあります。このチュートリアルで提供されるコードにも、Rogue Wave Views ライブラリーにもこれらの記号に関する定義は一切含まれません。この問題は、次のファイル間の競合が原因となっているものと考えられます。すなわち、nafxcw.lib (MFCによって使用される)、libcmt.lib (C ランタイム・ライブラリーによって使用される)、libcpmt.lib (C++ ランタイム・ライブラリーによって使用される) 間の競合です。
ただし、次に示すように、この問題を回避する方法があります。
1. ファイル DemoMFC.cpp および DemoMFCCtrl.cppDemoCtrl クラスを参照する行すべての前に、コメント文字を挿入します。
2. プロジェクト内のファイル ctrl.cpp および DemoCtrl.cpp を、非アクティブに設定します。
3. ActiveX コントロールを構築します。
4. 手順 1 で挿入したコメント文字を削除します。
5. ファイル ctrl.cpp および DemoCtrl.cpp をアクティブに再設定します。
6. ActiveX コントロールを再構築します。
以上の手順に従えば、この問題は回避できます。手順をより簡単にする場合は、コメントする行をソース・ファイル内で、次の if/endif マクロで囲みます。
#if define(USE_VIEWS)
#endif
このマクロを、ctrl.h ファイルで定義します。このマクロが定義するコード行の前にコメント文字を挿入し、必要に応じて削除します。
問題の原因が正確に特定でき次第、Microsoft に報告する予定です。

Version 6.0
Copyright © 2015, Rogue Wave Software, Inc. All Rights Reserved.