64 ビット プラットフォームでの WMI データの提供
32 ビット オペレーティング システム用に作成されたスクリプトとアプリケーションは、引き続き正常に実行されるはずです。 既に 32 ビット プロバイダーがある場合は、side-by-side で操作するために 64 ビット バージョンを記述する必要があるかどうかを評価してください。 一般に両バージョンは不要で、64 ビット バージョンで、32 ビットと 64 ビットのローカルまたはリモート クライアント両方にサービスを提供できます。 ただし、32 ビット アプリケーションの互換モードでは、32 ビット WOW64 モードで実行される 64 ビット システムで既存の 32 ビット WMI プロバイダーが使用されます。
まれな状況では、32 ビットと 64 ビットの両プロバイダーを 64 ビット システムで side-by-side で実行する必要があります。 この場合、読み込まれるプロバイダーの適切なバージョンは、呼び出し元が 32 ビットか 64 ビットか、ローカルかリモートかによって異なります。 接続オブジェクト コンテキスト フラグ (__ProviderArchitecture および __RequiredArchitecture) を使用する呼び出し元は、WMI が既定以外のプロバイダーを読み込むことを要求できます。 詳細については、「64 ビット コンピューターでのデータの取得と提供」を参照してください。
32 ビットおよび 64 ビット プロバイダーの両方を side-by-side で実行する必要があるまれなケースでは、インストールとアンインストールのシナリオを慎重に処理する必要があります。 これは、WMI にはリポジトリが 1 つしかなく、mofcomp.exe の 32 ビットおよび 64 ビットバージョンのいずれも、データを同じリポジトリに配置するためです。32 ビットと 64 ビットの .mof ファイルは区別されません。 プロバイダーの 1 つのバージョンを再インストールしても、問題は発生しません。.mof ファイルはコンパイルされ、クラスはリポジトリに格納されます。 ただし、名前空間が削除される 2 回目のアンインストールは、他のプロバイダーの操作に干渉する可能性があります。
関連トピック