Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SAP Sybase SQL Anywhere 16.0 » Ultra Light C/C++ プログラミング » アプリケーション開発 » Windows Mobile 向け Ultra Light アプリケーション開発

 

アプリケーションに対するクラス名の割り当て

MFC を使用している場合は、アプリケーションに固有のクラス名を割り当てます。ActiveSync で使用するアプリケーションを登録するには、ウィンドウクラス名を指定します。クラス名の割り当ては開発時に行うので、その方法については、アプリケーション開発ツールのマニュアルが主な情報源になります。

前提条件

この作業を実行するための前提条件はありません。

 ♦ タスク
  1. デフォルトのクラスに基づいて、ダイアログボックスのカスタムウィンドウクラスを作成して登録します。

    アプリケーションの起動コードに、次のコードを追加します。ダイアログを作成する前に、このコードを実行する必要があります。

    WNDCLASS wc;
    if( ! GetClassInfo( NULL, L"Dialog", &wc ) ) {
     AfxMessageBox( L"Error getting class info" );
    }
    wc.lpszClassName = L"MY_APP_CLASS";
    if( ! AfxRegisterClass( &wc ) ) {
     AfxMessageBox( L"Error registering class" );
    }

    MY_APP_CLASS は、アプリケーションのユニークなクラス名です。

  2. アプリケーションのメインダイアログにするダイアログを決めます。

    MFC アプリケーションウィザードを使ってプロジェクトを作成した場合、ダイアログ名は通常 MyAppDlg です。

  3. メインダイアログのリソース ID を調べて記録しておきます。

    リソース ID は、IDD_MYAPP_DIALOG のような、一般形式の定数です。

  4. アプリケーションの実行中は常にメインダイアログが開かれていることを確認します。

    アプリケーションの InitInstance メソッドに、次のコードを追加します。

    m_pMainWnd = &dlg;

    このコードにより、メインダイアログ dlg を閉じたときにアプリケーションも確実に閉じるようになります。詳細については、CWinThread::m_pMainWnd に関する Microsoft のマニュアルを参照してください。

    アプリケーションの実行中にダイアログが閉じられてしまう場合には、他のダイアログのウィンドウクラスも変更してください。

  5. 変更内容を保存します。

  6. プロジェクトのリソースファイルを変更します。

    メモ帳などのテキストエディタで、リソースファイル (拡張子は .rc) を開きます。

  7. メインダイアログのリソース ID を見つけます。

    メインダイアログの定義を変更して、次の例のように、新しいウィンドウクラスが使用されるようにします。変更するのは、CLASS 行の追加だけです。

    IDD_MYAPP_DIALOG DIALOG DISCARDABLE  0, 0, 139, 103
    STYLE WS_POPUP | WS_VISIBLE | WS_CAPTION
    EXSTYLE WS_EX_APPWINDOW | WS_EX_CAPTIONOKBTN
    CAPTION "MyApp"
    FONT 8, "System"
    CLASS "MY_APP_CLASS"
    BEGIN
           LTEXT   "TODO: Place dialog controls here.",IDC_STATIC,13,33,112,17
    END

    MY_APP_CLASS は、前の手順で使用したウィンドウクラスの名前です。

  8. .rc ファイルを保存します。

  9. 同期メッセージを取得するコードを追加します。

結果

アプリケーション固有のクラス名が作成されます。

 参照