ACF ファイルを使用すると、インターフェイスのネットワーク特性に影響を与えることなく、クライアントやサーバー アプリケーションの RPC インターフェイスをカスタマイズできます。 たとえば、クライアント アプリケーションに、ローカル コンピューターでのみ意味を持つ複雑なデータ構造が含まれている場合は、ACF ファイルで、リモート プロシージャ 呼び出しのコンピューターに依存しない形式でその構造体のデータを表す方法を指定できます。
このチュートリアルでは、クライアントとサーバー間の接続を表すバインディング ハンドルの種類を指定する、ACF ファイルのもう 1 つの使用方法について説明します。 ACF ヘッダーの [implicit_handle] 属性を使用すると、クライアント アプリケーションはリモート プロシージャ コール用のサーバーを選択できます。 ACF は、handle_t 型 (MIDL プリミティブ データ型) のハンドルを定義します。 MIDL コンパイラは、ACF が指定したバインド ハンドル名hello_IfHandleを生成されたヘッダー ファイルに含めます。 この特定の ACF ファイルの本文が空であることに注意してください。
//file: hello.acf
[
implicit_handle (handle_t hello_IfHandle)
]
interface hello
{
}
MIDL コンパイラには、個別の ACF ファイルを作成するのではなく、IDL ファイルに特定の ACF 属性 (implicit_handleなど) を含めることができます /app_configオプションがあります。 アプリケーションで多くの特別な構成が必要ない場合や、厳密な OSF 互換性が問題でない場合は、このオプションの使用を検討してください。