一般的な MIDL コマンド ライン構文
MIDL コンパイラは、IDL ファイルとオプションのアプリケーション構成ファイル (ACF) を処理して、一連の出力ファイルを生成します。 IDL ファイルのインターフェイス属性リストで指定された属性によって、コンパイラが RPC インターフェイスまたはカスタム OLE インターフェイスのソース ファイルを生成するかどうかが決まります。
スイッチ オプション
midl [command-line-switch [switch-options]] filename
-
command-line-switch
-
MIDL コンパイラコマンド ライン スイッチを指定します。 スイッチは、任意の順序で表示できます。
-
switch-options
-
各スイッチに関連付けられているオプションを指定します。 有効なオプションについては、各 MIDL コンパイラ スイッチのリファレンス エントリを参照してください。
-
filename
-
IDL ファイルの名前を指定します。 このファイルは通常拡張子 .idl を持ちますが、別のファイルまたはなしを持つことができます。
解説
次の一覧は、Name.idl という名前の IDL ファイルに対して生成されたファイルの既定の名前を示しています。 コマンド ライン スイッチを使用して、これらの既定の名前をオーバーライドできます。 IDL ファイルの名前には、.idl 以外の拡張子を付けたり、拡張子をまったく指定したりすることはできません。
既定では (つまり、インターフェイス属性リストに オブジェクト または ローカル 属性が含まれていない場合)、コンパイラは RPC インターフェイス用に次のファイルを生成します。
- クライアント スタブ (name_c.c)
- サーバー スタブ (name_s.c)
- ヘッダー ファイル (name.h)
オブジェクト属性がインターフェイス属性の一覧に表示されると、コンパイラは COM インターフェイス用に次のファイルを生成します。
- インターフェイス プロキシ ファイル (name_p.c)
- インターフェイス ヘッダー ファイル (name.h)
- インターフェイス UUID ファイル (name_I.c)
インターフェイス属性の一覧に ローカル 属性が表示されると、コンパイラはインターフェイス ヘッダー ファイル Name.h のみを生成します。
Microsoft RPC で提供される MIDL コンパイラは、IDL ファイルを処理するために必要に応じて C プリプロセッサを呼び出します。 生成されたファイルをコンパイルするために C コンパイラを自動的に呼び出すわけではありません。
Note
Microsoft RPC で提供される MIDL コンパイラは、DCE IDL コンパイラとは異なるコマンド ライン構文を使用します。
MIDL コンパイラは 、/env、 /server、 /sstub、/ out を切り替え、サーバー スタブ ファイルに影響します。
MIDL バージョン 6.0.359 以降、MIDL コンパイラの既定のコマンド ライン オプションは /Oicf /robust です。 /robust を無効にするには、 /no_robust オプションを指定します。
ヘッダー ファイル
ヘッダー ファイルには、IDL ファイルで宣言されているすべてのデータ型と操作の定義が含まれています。 ヘッダー ファイルは、定義された操作を呼び出す、定義された操作を実装する、または定義された型を操作するすべてのアプリケーション モジュールに含める必要があります。
MIDL コンパイラスイッチ /header および /out はヘッダー ファイルに影響します。