5
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

dllファイルの32/64bitを判定する方法

Last updated at Posted at 2019-09-19

#判定法を知っておくと便利なシチュエーション
OracleやPostgreSQLのクライアントドライバをインストールする際に、ファイル名やフォルダ名だけからでは32bitなのか64bitなのか確信を得られない場合がある。
また、アプリケーションが動かない原因を調査する際や、dllの参照が正しくなされれているかを確認する場合にも、32/64bitの判断ができると便利である。
では、どのようにして調べればよいかだが、VisualStudio(VS)に付随しているツール、dumpbin.exeを用いると判定が可能なので、その方法を紹介する。

#事前準備
dumpbin.exeはVSに付属しているツールである。そのためバージョンはExpressでもよいので、VSを判定を行う環境にインストールする必要がある。以下のスクリーンショットはVS2015だが、現在有効なVSであればほかのバージョンでも利用が可能なはずである。
なお、.NETを開発する環境だと標準(C#やVisual Basicなど)のインストールでは、dumpbinはインストールされないのでインストール時にVisual C++の共通ツールをチェックする必要がある。すでにVSがインストール済みの環境であれば、インストールメディアからインストーラーを実行しインストールするように「変更」を行うことでツールを利用することができる。
image.png

#使い方
「すべてのプログラム」から「Visual Studio 2015」>「Visual Studio Tools」>「開発者コマンド プロンプト for VS2015」を選択、起動する。
調べたいdllのフォルダに移動し、以下のコマンドを実施する。

dumpbin Oracle.DataAccess.dll /headers | findstr machine

ここで、x64と表示されれば64bit。x86と表示されれば32bit用のdllということである。
なお、"|"以降のfindstrはdumpbin /header の出力に対してパイプライン処理で、machineという単語を含む行を抜き出している。

5
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
5
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?