次の方法で共有


Windows フォーム ActiveX コントロール インポータ (Aximp.exe)

ActiveX コントロール インポータは、ActiveX コントロール用の COM タイプ ライブラリに属する型定義を Windows フォーム コントロールに変換します。

Windows フォームがホストできるのは、Control から派生するクラスである Windows フォームのコントロールだけです。Aximp.exe は Windows フォーム上でホストできる ActiveX コントロール用のラッパー クラスを生成します。このため、他の Windows フォーム コントロールに適用できるのと同じデザイン時サポートとプログラミング手順を使用できます。

ActiveX コントロールをホストするには、AxHost から派生するラッパー コントロールを生成する必要があります。ラッパー コントロールには、基になる ActiveX コントロールのインスタンスが 1 つ含まれます。このインスタンスは、ActiveX コントロールとの通信方法を認識しますが、Windows フォーム コントロールとして表示されます。生成されたコントロールは、ActiveX コントロールをホストし、そのプロパティ、メソッド、およびイベントを、生成されたコントロールのプロパティ、メソッド、およびイベントとして公開します。

aximp [options]{file.dll | file.ocx}

解説

引数 説明

file

変換する ActiveX コントロールを含むソース ファイルの名前。引数 file の拡張子は .dll または .ocx であることが必要です。

オプション 説明

/delaysign

Aximp.exe が遅延署名を使用して、生成されたコントロールに名前を割り当てるように指定します。このオプションは、/keycontainer:/keyfile:、または /publickey: のいずれかのオプションと共に指定する必要があります。遅延署名プロセスの詳細については、「アセンブリへの遅延署名」を参照してください。

/help

このツールのコマンド構文とオプションを表示します。

/keycontainer: containerName

containerName で指定されたキー コンテナの公開キーと秘密キーのペアを使用して、生成されたコントロールに厳密な名前で署名します。

/keyfile: filename

filename にある発行者の正式な公開キーと秘密キーのペアを使用して、生成されたコントロールに厳密な名前で署名します。

/nologo

Microsoft 著作権情報を表示しません。

/out: filename

作成するアセンブリの名前を指定します。

/publickey: filename

filename で指定されたファイルの公開キーを使用して、生成されたコントロールに厳密な名前で署名します。

/silent

成功メッセージを表示しません。

/source

Windows フォーム ラッパーの C# ソース コードを生成します。

/verbose

詳細出力モードを指定します。進行状況に関する追加情報が表示されます。

/?

このツールのコマンド構文とオプションを表示します。

Aximp.exe は、ActiveX コントロール タイプ ライブラリの全体を一度に変換し、元のタイプ ライブラリの中で定義されていたタイプのための共通言語ランタイム メタデータとコントロール実装を含む、アセンブリのセットを生成します。生成されるファイルには、次のパターンに従って名前が付けられます。

COM タイプ用の共通言語ランタイム プロキシ : progid.dll

ActiveX コントロール用 Windows フォーム プロキシ (Ax は ActiveX を表します) : Axprogid.dll

注意

ActiveX コントロールのメンバの名前が .NET Framework で定義された名前と一致する場合、Aximp.exe は、AxHost 派生クラスを作成するときにメンバ名の前に "Ctl" を付けます。たとえば、ActiveX コントロールに "Layout" というメンバが含まれている場合、.NET Framework 内で Layout イベントが定義されているため、メンバ名は、AxHost 派生クラスでは "CtlLayout" に変更されます。

これらの生成されたファイルは、MSIL 逆アセンブラ (Ildasm.exe) などのツールでチェックできます。

ActiveX Control shdocvw.dll に対して Aximp.exe を実行すると、ツールが実行されるディレクトリに shdocvw.dll という名前の別のファイルが常に作成されます。この生成されたファイルが Documents ディレクトリおよび Settings ディレクトリに置かれると、Microsoft Internet Explorer や Windows エクスプローラに対して問題を引き起こします。コンピュータを再起動すると、Windows は shdocvw.dll のコピーを見つけるために、system32 ディレクトリの前に Documents ディレクトリと Settings ディレクトリを調べます。Windows は Documents と Settings で見つけたコピーを使用して、マネージ ラッパーを読み込もうとします。Internet Explorer と Windows エクスプローラは、system32 ディレクトリにある shdocvw.dll のバージョンのレンダリング エンジンに依存しているため、正しく機能しません。このような問題が発生したら、Documents ディレクトリおよび Settings ディレクトリにある shdocvw.dll を削除して、コンピュータを再起動します。

使用例

Media Player コントロール msdxm.ocx の MediaPlayer.dll と AxMediaPlayer.dll を生成するコマンドを次に示します。

aximp c:\systemroot\system32\msdxm.ocx

参照

関連項目

.NET Framework ツール
MSIL 逆アセンブラ (Ildasm.exe)