前回の記事で、アプリケーションが使用するファイルが
どのパッケージに含まれているかを調査するためのツール
『Package Mapper』が64bit環境でうまく動作しないという情報を
お伝えしていました。
※『Package Mapper』はMSのデベロッパーが作成して公開しているツールです。
http://archive.msdn.microsoft.com/packagemapperからダウンロード可能です。
で、このままではどうしようもないので、
開発者のJ.T.Kimbell氏にメールしてソースを提供してもらい、
調べてみました。
単純にバイナリがAny CPUでビルドされており、
x64環境で実行すると64bitで動作するわけですが、
使用しているライブラリかCOM(恐らくEmbeddedDSI.dll)が32bit版なので呼び出せず、
動作しないようです(汗)。
というわけで、以下の手順でツールを64bit環境でも32bitで動作させるようにすれば、
問題なさそうですね。
①上記サイトから、Package Mapperをダウンロードします。
⇒[Download]タブのリンク「pkgmapper.exe」をクリックします。
②ダウンロードした「PkgMapperUI.exe」を念のためバックアップしておきます。
⇒単純にどこかにコピーしておいてください。
③Windows SDKをインストールします。
Visual Studio 2008をインストールされている方は、すでに入っているかもしれません。
私の環境では、VS2008をインストールしていますが、
Windows SDKの6.0Aが入っていました。
④Windows SDKの以下のフォルダに入っているツール「CorFlags.exe」をコマンドプロンプト上で実行します。
CorFlags.exeのあるフォルダ:Program Files¥Microsoft SDKs¥Windows¥(バージョン)¥bin
実行例
>CorFlags.exe (Package Mapperのあるフォルダ)¥PkgMapperUI.exe /32bit+
次回(こそ)は、Package Mapperを使用したパッケージの調査方法をお伝えします(笑)。
本年も本サイトを閲覧頂きありがとうございます。
来年もどうぞよろしくお願いします!!!
ではでは、よいお年を!
どのパッケージに含まれているかを調査するためのツール
『Package Mapper』が64bit環境でうまく動作しないという情報を
お伝えしていました。
※『Package Mapper』はMSのデベロッパーが作成して公開しているツールです。
http://archive.msdn.microsoft.com/packagemapperからダウンロード可能です。
で、このままではどうしようもないので、
開発者のJ.T.Kimbell氏にメールしてソースを提供してもらい、
調べてみました。
単純にバイナリがAny CPUでビルドされており、
x64環境で実行すると64bitで動作するわけですが、
使用しているライブラリかCOM(恐らくEmbeddedDSI.dll)が32bit版なので呼び出せず、
動作しないようです(汗)。
というわけで、以下の手順でツールを64bit環境でも32bitで動作させるようにすれば、
問題なさそうですね。
①上記サイトから、Package Mapperをダウンロードします。
⇒[Download]タブのリンク「pkgmapper.exe」をクリックします。
②ダウンロードした「PkgMapperUI.exe」を念のためバックアップしておきます。
⇒単純にどこかにコピーしておいてください。
③Windows SDKをインストールします。
Visual Studio 2008をインストールされている方は、すでに入っているかもしれません。
私の環境では、VS2008をインストールしていますが、
Windows SDKの6.0Aが入っていました。
④Windows SDKの以下のフォルダに入っているツール「CorFlags.exe」をコマンドプロンプト上で実行します。
CorFlags.exeのあるフォルダ:Program Files¥Microsoft SDKs¥Windows¥(バージョン)¥bin
実行例
>CorFlags.exe (Package Mapperのあるフォルダ)¥PkgMapperUI.exe /32bit+
次回(こそ)は、Package Mapperを使用したパッケージの調査方法をお伝えします(笑)。
本年も本サイトを閲覧頂きありがとうございます。
来年もどうぞよろしくお願いします!!!
ではでは、よいお年を!