CWinApp::RegisterShellFileTypes
アプリケーションのすべてのドキュメントの種類を Windows のファイル マネージャーに登録します。
void RegisterShellFileTypes(
BOOL bCompat = FALSE
);
パラメーター
- [入力] bCompat
TRUE の場合、シェル コマンドの Print と Print To の登録エントリを追加し、ユーザーがファイルをシェルから直接、またはプリンター オブジェクトにドラッグして印刷できるようにします。DefaultIcon キーも追加されます。既定では、下位互換性のために FALSE になります。
解説
この関数によって、アプリケーションで作成したデータ ファイルをファイル マネージャー内でダブルクリックして開けられるようになります。アプリケーションのドキュメント テンプレートごとに、AddDocTemplate を呼び出した後に、RegisterShellFileTypes を呼び出します。RegisterShellFileTypes を呼び出すときに、EnableShellOpen メンバー関数も呼び出します。
RegisterShellFileTypes は、アプリケーションが管理する CDocTemplate オブジェクトのリスト内を反復し、それぞれのドキュメント テンプレートごとに、Windows がファイルの関連付けを管理する登録データベースにエントリを登録します。ファイル マネージャーはこれらのエントリを使って、ユーザーがデータ ファイルをダブルクリックしたときにそのファイルを開きます。これにより、アプリケーションに .REG ファイルを同梱する必要はなくなります。
[!メモ]
RegisterShellFileTypes は、ユーザーが管理者権限でプログラムを実行している場合にのみ有効です。プログラムに管理者権限がない場合、レジストリ キーを変更することはできません。
ファイル名拡張子が、登録データベースで既に別のファイル タイプに関連付けられている場合は、新たな関連付けは行われません。この情報を登録するのに必要な文字列の書式については、CDocTemplate クラスを参照してください。
必要条件
ヘッダー: afxwin.h