メニューとリソース : サーバーの変更点
この技術情報では、ビジュアル編集サーバー コンポーネント ()アプリケーションのメニューおよび他のリソースに対する必要がある変更について説明します。サーバー アプリケーションは、メニュー構造、および他のリソースに 3 個のモードの 1 種類で起動できるため、多くの加算が必要です: 単独で使って、埋め込まれた、または。メニューとリソース (OLE) の技術情報 " に説明されているように、最大 4 セットのメニューがあります。4 つはすべて MDI サーバー アプリケーションに 3 つだけですミニサーバーに使用されますが、使用されます。アプリケーション ウィザードは、必要なサーバーの種類に必要なメニューのレイアウトを作成します。カスタマイズに必要になることもあります。
アプリケーション ウィザードを使用しない場合は、これらの変更がどのように実行されるか、 HIERSVR.RC の MFC サンプル アプリケーション HIERSVRのリソース スクリプトを表示することもできます。
この技術情報で説明するトピックは次のとおりです。:
サーバー メニューの加算
アクセラレータ テーブルの加算
ミニサーバーの加算
サーバー メニューの加算
サーバー コンポーネント ()アプリケーションは OLE サポートのビジュアル編集に追加するメニューのリソースが含まれている必要があります。アプリケーションが独立モードで実行するときに使用されるメニューは、アプリケーションをビルド前に、 2 種類の新しいメニュー リソースを追加する必要があります。変更する必要はありません: 完全に開いているサーバーをサポートするために埋め込み先編集の有効化をサポートする 1 および 1。メニュー リソースが両方とも全体とミニサーバー アプリケーションによって使用されます。
埋め込み先編集の有効化をサポートするには、メニュー リソースを作成します。独立のメソッドで実行されるときに使用されるメニュー リソースと非常に似ています。このメニューの違いは、アプリケーションを処理するコンテナーに存在するファイルとウィンドウの項目 (および他のメニュー項目はなく、データ)欠落していることです。コンテナー アプリケーションはこれらのメニュー項目を指定します。詳細情報、および例については、このメニューのマージの手法は、技術情報 メニューとリソース: メニューのマージが表示されます。
走られたと独立のメソッドで完全に開かれたアクティベーションをサポートするには、使用されるメニュー リソースと同じのメニュー リソースを作成します。このメニュー リソースへの変更はサーバーで複合ドキュメントに埋め込まれている項目に対して実行するという事実を反映するようにある項目が反復処理されることです。
、この技術情報の変更に加えて、リソース ファイル (Microsoft Foundation Class)ライブラリの実装に必要な AFXOLESV.RC を含める必要があります。このファイルは、 MFC \Include サブディレクトリにあります。
サーバー アプリケーションのアクセラレータ テーブルの加算
2 個の新しいアクセラレータ テーブルのリソースは、サーバー アプリケーションに追加する必要があります。; これらは、前に説明した新しいメニュー リソースに直接対応します。最初のアクセラレータ テーブルは、サーバー アプリケーションをアクティブ化するときに使用します。これは、コンテナーに存在するファイルとペイン メニューに関連を除くビューのアクセラレータ テーブルのすべてのエントリから構成されます。
2 番目の表は、ビューのアクセラレータ テーブルのほぼ同じコピーです。行われた サーバー メニューの加算で説明した完全に開いたメニューの違いの並列変更。
これらのアクセラレータ テーブルの変更例については、 MFC サンプルの OLE HIERSVRに含まれる HIERSVR.RC ファイルの IDR_MAINFRAME の IDR_HIERSVRTYPE_SRVR_IP と IDR_HIERSVRTYPE_SRVR_EMB のアクセラレータ テーブルを比較します。コンテナーに存在するファイルとペインのアクセラレータは、埋め込み先テーブルから欠落して、これらの同じコピーは、テーブルにあります。
サーバー アプリケーションの文字列テーブルの加算
1 桁の文字列テーブルの加算だけがサーバー アプリケーション — OLE の初期化に失敗したことを示す文字列に必要です。たとえば、アプリケーション ウィザードが生成する文字列テーブル エントリを次に示します。:
ID |
[文字列] |
---|---|
IDP_OLE_INIT_FAILED |
OLE の初期化に失敗しました。OLE ライブラリのバージョンが正しいことを確認してください。 |
ミニサーバーの加算
同じ加算 [フル サーバーに上記のパラメーターとしてミニサーバーに適用されます。ミニサーバーが独立のメソッドで実行できないため、メイン メニューはとても小さいです。アプリケーション ウィザードで作成されたメイン メニューに項目の終了のみを含むファイル メニューだけになります。ミニサーバーの埋め込み埋め込みのメニュー、アクセラレータは、フル サーバーの場合と同じです。