問題タブ [dumpbin]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - ヘッダーなしでC ++ dllの関数を呼び出す
dll からメソッドを呼び出したいのですが、ソースもヘッダー ファイルもありません。メソッドの名前を確認するために dumpbin /exports を使用しようとしましたが、メソッドのシグネチャを見つけることができますか?
このメソッドを呼び出す方法はありますか?
ありがとう、
c# - エクスポートテーブルがファイル自体よりも大きいファイルオフセットに表示された場合、dumpbinはどのようにしてエクスポートテーブルを読み取ることができますか?
私は小さなPEリーダーを書いているので、テストアプリケーションと一緒にdumpbinを実行して、値が正しく読み取られていることを確認します。エクスポートテーブルを除いて、これまでに機能していたすべてのもの。
私がテストしているファイルはDLLです。私のアプリケーションはファイルをバイト配列として読み込み、それが私のPEリーダークラスに渡されます。値は、RVAやエクスポートデータディレクトリのサイズなど、dumpbinによって出力された値と一致します。
問題は、バイト配列のサイズがわずか42,496であるということです。ご想像のとおり、私のPEリーダーがE000(57,344)で読み込もうとすると、が表示されますIndexOutOfRangeException
。ただし、dumpbinにはそのような問題はなく、エクスポートディレクトリを正常に読み取ります。そして、はい、ファイル全体が実際にバイト配列に読み込まれています。
これはどのように可能ですか?
visual-studio-2005 - VS 2005 でコンパイルするときに、dumpbin /symbols を使用してソース ファイル情報を取得するにはどうすればよいですか?
dumpbin /symbols の出力を使用して、C/C++ ライブラリとの依存関係の分析を行うツールがあります。VS 6.0 でライブラリをコンパイルしたとき、ダンプビン COFF SYMBOL TABLE には次のようなエントリが含まれていました。
ソースと定義済み/使用済みのシンボルとの関係を取得できます。これはツールにとって不可欠です。VS 2005 でコンパイルすると、これらのエントリが失われます。libs を 16 進エディタで見ると、バイナリ ファイルにファイル名情報がまったく含まれていないようです。そのため、VS 2005 でコンパイルするときに、Filename エントリをライブラリに戻す方法を探しています。
ありがとうスコット。
Debug Help API は面白そうに見えますが、COFF から抽出できたのと同じ情報を取得する方法をまだ理解できていませんでした。シンボルごとに
- それを定義するソースファイル
- およびシンボルを使用したソース ファイルのリスト
これに関する指針はありますか?
c++ - C++dllのメソッドに対応する引数を見つける
わかりました。dumpbin.exe/exportslibrary.dllを使用して、dll内のすべてのメソッドを検索できます。
...しかし、どの引数をそれらに渡すかをどのように見つけるのですか?もちろんヘッダーファイルなし。
visual-studio-2005 - DumpBin で、バイナリに COMDAT がないと表示されるのはなぜですか?
これは私が得る出力ですdumpbin AchievementsTable.obj /HEADERS
私のソースはすべてこれを行います。私は VisualStudio 2005 を使用しています。実際には、.exe がリンクして正しく実行されるため、多くの COMDAT がエクスポートされていることを知っています。避けるべきコンパイラ スイッチはありますか? ここに私が使用しているものがあります:
私は一般的に私の選択についてコメントを受け付けていますが、DumpBin の使用がこの質問の焦点です: 男の子と女の子、それを取り除いてください...
windows - Analyze .exe/.dll (Windows PE) files for code bloats
Let's say I have a project with a dozen of different modules which produce one resultant DLL, how can I analyze it so that I can identify the actual file size that each module/functions contribute? I know it might be impossible with a Release build where much information has been stripped, but how about if I have the full source and can do a Debug build?
Also, if there are big static variables defined somewhere, is there a way I can easily locate them?
Bonus question: How about Linux ELF files?
windows - 最適化された Windows バイナリのクラッシュ ダンプから関数トレースをおおよそ知るにはどうすればよいですか?
Windows X86-64 バイナリ (XXX) から生成されたクラッシュ ダンプ ファイルがあります。
私は実行可能ファイルを持っています。objdump または dumpbin を使用してアドレスを関数名にマップすることは可能ですか?
ありがとう、ナガ
c++ - ライブラリ ファイル内のシンボルを分析するためのユーティリティ
大きな静的ライブラリ (.lib) ファイルに問題があり、テンプレート クラスの無差別な使用によるコードの肥大化を疑っています。ライブラリ内のシンボルを分析して、ファイル サイズの大部分を占めているシンボルを確認したいと考えています。
このライブラリに対して実行可能ファイルをリンクすると、結果の出力はサイズ的に (約 20Mb) はるかに適切になるため、リンカは明らかに多くの冗長なシンボルを取り除きます。何が削除されているのか知りたい..
シンボルとヘッダーを生成するために dumpbin を使用できることはわかっていますが、問題のライブラリがかなり大きい (900Mb) ため、このダンプは、解析してレポートするためのユーティリティがなければほとんど使用できません。
明らかに私はこれを自分で書くことができましたが、誰かがこれのためにすでに利用可能なフリーウェアを推奨できるかどうか疑問に思っていましたか?
windows - Dumpbin 警告 LNK4195: msdis170.dll を読み込めません
ファイルの逆アセンブリをダンプするオプションdumpbin
を使用しようとしています。/DISASM
それは私にエラーを与えますLINK : warning LNK4195: unable to load msdis170.dll
。
どうやら、ファイルmsdis170.dll
は私のコンピューターには存在しません。Windows SDK を再インストールしようとしましたが、うまくいきませんでした。では、このファイルを取得するにはどうすればよいでしょうか。
Windows SDK の最新バージョンがインストールされた Windows 7 Home Premium 64 ビットを使用しています。
linux - インポートを表示する Linux 用の Dumpbin.exe
私の質問がLinuxの方法で意味があるかどうかはわかりません。Visual Studio ツールキットの dumpbin.exe に似たものを探しています。
基本的に、多数のライブラリと単一の実行可能ファイルを含む既存のプロジェクトがあります。どのライブラリが本当に必要で、各ライブラリでどの機能が機能するかを把握したいと思います。
このプロジェクトは ARM デバイスを対象としているため、共有オブジェクトのみを使用しています。