自動化オブジェクトへのプライマリー相互運用アセンブリーのサポート
HCL Z and I Emulator for Windows により公開された自動化オブジェクトは、.NET フレームワークを対象とする任意の言語で作成されたアプリケーションで使用できます。管理対象の .NET アプリケーションは、自動化オブジェクトをラップするプライマリー相互運用アセンブリー (PIA) を使用して、Z and I Emulator for Windows をプログラミングできます。相互運用アセンブリーは、管理対象の (.NET) アプリケーションが COM 準拠オブジェクトを使用する際のメカニズムです。相互運用アセンブリーには、バインディングおよびメタデータ情報が含まれ、 これにより、.NET フレームワーク (CLR) は COM オブジェクトをロードまたはマーシャルして、.NET アプリケーション用にラップできます。PIA には、COM 型の提供者によって定義された COM 型の正式な記述が含まれます。PIA は、必ずオリジナルの COM 型の提供者によってデジタル署名されています。
- 単純なアプリケーションまたは単一のアプリケーションがアセンブリーを使用する場合、 Microsoft はアセンブリーをアプリケーションと同じディレクトリーにコピーすることを推奨しています。
- 複数のアプリケーションがアセンブリーを参照する場合、 アプリケーションをグローバル・アセンブリー・キャッシュ (GAC) にインストールして、すべてのソリューションに GAC の アセンブリーを参照させることができます。
相互運用アセンブリーによって公開されている型のプログラミング・モデルは COM とよく似ています。COM オブジェクトによって公開されているメソッド、プロパティー、 およびイベントは、いずれの .NET 言語でもその言語の構文を使用してアクセスできます。C# で作成されたサンプル・アプリケーション (ECLSamps.net) が Z and I Emulator for Windows のインストール・イメージの \samples ディレクトリーに提供されています。このサンプルは、 相互運用アセンブリーのさまざまな型の単純な使用法を示します。
Visual Basic 6.0 で、Z and I Emulator for Windows の自動化オブジェクトを使用し、変換支援ウィザードを使用して Visual Basic .NET に移行したプロジェクトでは、ユーザーは、対応する Z and I Emulator for Windows 相互運用参照 (\Interops ディレクトリー) を使用して変換支援ウィザードによって暗黙で生成される参照を置換して、再コンパイルするだけです。参照を置換する方法は、 変換支援によって生成されたすべての参照を削除し、Visual Studio .NET を使用して .NET 相互運用参照を追加します。GAC に登録してあるアセンブリーを使用する場合、参照を追加して、Z and I Emulator for Windows 相互運用参照の「ローカルのコピー」プロパティーを「False」に設定します。
Z and I Emulator for Windows のエミュレーター自動化オブジェクトの PIA は、Z and I Emulator for Windows のインストール・イメージの \Interops ディレクトリーにインストールされます。Z and I Emulator for Windows 製品インストーラーによって .NET フレームワークが存在することが検出された場合、GAC 内に型を登録するための追加オプションが提供されます。GAC にアセンブリーをインストールすると、PIA は対応する型ライブラリーのレジストリー・キーの下のレジストリーにも置かれます。
表 1 に、Z and I Emulator for Windows の自動化オブジェクトに提供される PIA をリストします。
自動化オブジェクト | 相互運用アセンブリー依存関係 |
---|---|
autECLConnList | Interop.AutConnListTypeLibrary.dll |
autECLConnMgr | Interop.AutConnMgrTypeLibrary.dll |
autECLConnList | Interop.AutPSTypeLibrary.dll |
autECLOIA | Interop.AutOIATypeLibrary.dll |
autECLPS | Interop.AutPSTypeLibrary.dll |
autECLScreenDesc | Interop.AutScreenDescTypeLibrary.dll |
autECLScreenReco | Interop.AutScreenRecoTypeLibrary.dll |
autECLSession | Interop.AutSessTypeLibrary.dll |
autECLPageSettings | Interop.AutSettingsTypeLibrary.dll |
autECLPrinterSettings | Interop.AutSettingsTypeLibrary.dll |
autECLWinMetrics | Interop.AutWinMetricsTypeLibrary.dll |
autECLXfer | Interop.AutXferTypeLibrary.dll |
autSystem | Interop.AutSystemTypeLibrary.dll |