• ベストアンサー

dllファイルの編集

dllファイルを編集したく、バイナリエディタ(Quick Be)で開いたのですが、どのように理解すればよいのかわかりません。 構造としては、プログラムがかかれているのでしょうか?どのようなことがかかれていて、どれを編集すればよいのかというのが理解できていません。 また、そいういう点で参考になるHPがあれば教えていただきたく質問させていただきました。 よろしくお願い致します。 技術的なことはJava・C++については理解しています。

質問者が選んだベストアンサー

  • ベストアンサー
  • mld_sakura
  • ベストアンサー率20% (264/1282)
回答No.1

簡単に言えば、実行形式でないプログラムが書かれています。 モジュール(関数)の集合体です。 これを編集するのには逆コンパイルが必要ですが、現実的には不可能です。 バイナリエディタでやったとしても、それはバイナリレベルの編集であって、正常に動作はしませんね。 要するに、ソースを編集してから、再度DLL化しないと駄目です。

yanapp
質問者

お礼

回答ありがとうございます。 なるほど、理解できました。 ソースが手に入らなかったもので・・・。 中身がC++で書かれているであろう事までは読めたのですが・・・dllからでは逆コンパイルは不可能なのですね。 また、バイナリコードをいじっても反映されない。 元ソースをいじらないといけないということも理解できました。 どうもありがとうございました。

関連するQ&A

  • アプリケーションのDLLファイルを開いたり、編集したりすることは技術的に可能ですか?

    プログラミングの知識も経験もほとんどないのですが、教えてください。パソコンにインストールしたアプリケーションのDLLファイルですが、これは何らかの言語で書かれたプログラムですか?特定の言語ではないのでしょうか?それを開いたり、編集したりすることは技術的に可能ですか。どんな言語で書かれたファイルなのか確認したり、編集したりするのに必要な環境はどのようなものなのでしょうか。

  • Borland C++でDLL作成

    こんにちは。 Borland C++でC++を始めて2日目なのですが、質問させてください。 メモ帳のエディタを使って簡単なプログラムを作成してコマンドプロンプトからコンパイルしています。 質問は、DLLとOCXを作成したいのですが、可能でしょうか? 作成手順がさっぱりわからなくて、参考になるサイト等を教えていただきたいです。 よろしくお願い致します。

  • 起動中のプロセスのメモリを書き換えるには

    フリーソフトを使用していて、アプリケーション終了時に毎回作者のHPが表示される。 ollyやバイナリエディタで編集すると、起動時にエラーが出て起動できなくなってしまう。 なので、実行中に書き換えるしかないのですが、この場合どのようなプログラムを書けば良いのでしょうか・・・。 C#での参考URL、または具体的なコードを教えて頂きたいです。 ※カテゴリにC#がなかったのでC++にしてます。

  • バイナリファイルの書き出し

    バイナリファイルにデータを書き込むプログラムを作りたいと思っています。実は、Standard MIDI Fileのバイナリファイルを作りたいんです。 SMFについては、今まで、直接バイナリエディタで開き、16進数の数字をいじくって、データ書き換えたりしてたので直接バイナリファイルに16進数での数字を書きたいんです。 たとえば、テキストファイルに903C408360803C0000みたいに吐き出すプログラムでは、バイナリファイルに書き出してからバイナリエディタで開くと こいつがさらに16進数に変換されてしまいますよね? そうならないようにするにはどうやればいいんですか?

  • DLLとプロジェクト

     過去に質問していたらすいません。 DLLは複数のアプリケーションをマルチタスクで活用するソースプログラムだと認識しているのですが、まちっがていたら指摘してください。  DLLのプログラムの書き方がわからないので、参考になるページを教えてもらえないでしょうか。言語はC言語です。DLLをC言語で書くのかもわからないので。。  プロジェクトの概念があまりわからないので、そちらの方も参考になるページまたは「かきこ」よろしくお願いします。  

  • メイクファイルからdllを生成するには

    環境はWindowsXP SP3 VisualStudio2008です。 メイクファイルからdllを生成するには dllとlib形式で用いるフリーのライブラリがありまして、 Windows用バイナリとソースが提供されています。 Windows用バイナリの方がリリースが遅いので、 最新のソースの方でdllとlibを生成しようと考えました。 しかし、中身を見ると、 C言語用の「.c」「.h」ファイル以外に以下のファイルが含まれており、 これは何なのかと疑問を持ちました。 aclocal.m4 config.guess config.sub configure configure.in depcomp INSTALL install-sh ltmain.sh Makefile.am Makefile.in missing 調べたところメイクファイルというものだと分かったのですが、 これを用いてどうやってdllを生成すればよいのでしょうか。 参考として、このライブラリの提供サイトを記載しておきます。 http://libharu.org/wiki/Downloads

  • GTOPO30のDEMファイルのデータ構造

    GTOPO30のデータを取り込むプログラムを書きたいのですが、DEMファイルをバイナリエディタで開いても訳が分かりません。どういうデータ構造になっているのでしょうか?プログラミング初心者です。よろしくお願いします。

    • 締切済み
    • PHP
  • DLL・・・困っています。至急お願いします。

    パソコンの電源を入れると以下のように表示され先に進めずネットが出来ません。どうしてこのようになり、またどのようにしたら直るのか、パソコンに詳しくないので分かりやすい用語で説明し頂けると助かります。よろしくお願いいたします。 dlimport.exe-DLLが見つかりません ダイナミック リンク ライブラリ MSDART.DLLが指定されたパス C:\Program Files\Common Files\System\OleDB;.;C\WINNT\system32;C:\WINNT\system;C:\PROGRA~1\JURTY~1\JSLIB32;C:\WINNT\system32;C:\WINNT\System32\Wbem;C:\Program Files\Common Files\Autodesk Shared\;C:\Prgram Files\Quick Time\QTSystem\に見つかりませんでした。 回答ありがとうございます。詳細ですが上記のように出ます。 参考URLも拝見しましたが、パソコンに疎いのでできればわかりやすい用語で再度回答頂ければと思います。 よろしくお願いいたします。

  • DLLファイルの破損

    IISアプリケーションをWindowsNT上で動作中、下記のエラーメッセージが画面上に出力されました。 「C:\Program Files\Common Files\designer\MSWCRUN.DLLからコントロール'WebClass'をロードできませんでした。 C:\Program Files\Common Files\designer\MSWCRUN.DLLのヴァージョンが最新のものではありません。アプリケーションから提供された最新のヴァージョンを使用しているかどうか確認してください。」 以前に上記MSWCRUN.DLLは最新のものを入れまして、1年以上動作させており、問題がありませんでしたので、その下層にある、VBのDLLである"A.DLL(仮名)"をregsrv32で一旦レジストリから離し、再度同じDLLをレジストリに登録し直すという方法で解決いたしました。 そこで、質問なのですが、この上記A.DLLに何らかの原因で 破損の状態が生じておったと考えていいのでしょうか? そして、なぜ、このような状態になるのでしょうか? MicrosoftのHPによると、Windows2000では、DLLファイルの破損状態を監視して、修復してくれるものがあると言ってましたが。

  • Rubyでバイナリファイルを編集したい

    Rubyで、あるバイナリファイルを読み込んで、一部を変更し、別名で保存するスクリプトを書きたいと思っています。このような場合、どうすればよいのでしょうか? また、参考になるHPがあれば教えてください。 Cで書こうと思えば書けるのですが、Rubyを勉強中なので、Rubyで書きたいと思っています。 よろしくお願いします。