dポイントプレゼントキャンペーン実施中!

Borland C++ Builderを使用してプロジェクトをコンパイル
してdllを作成する際、コンパイルに成功してあるdllができたとして、
その後プロジェクトに何の変更もなく、再コンパイルすると
dllの中身は何か変わっているのでしょうか?
例えば、コンパイル日時の情報が中に書き込まれているなど。
サイズが変わることもあるのでしょうか?

A 回答 (1件)

日付情報が入っているみたいですね。


Delphiでも変わるようです。 dllだけでなくexeもです。
デバック情報を入れているようでしたらtdstripコマンドで取り除くとコードだけになるので少しは違う部分が減るかもしれません。
コンパイルオプションでビルド番号などバージョン情報を含んでいるかもしれませんのでその辺も差が出る部分でしょう。
昔はバイナリ比較すれば変化の無いことを確認できたのですが最近はソース管理をしっかりしておかないとその辺が不安になることがあります。
極々小さいプログラムでコンパイルしてバイナリ比較すると判るでしょう。
サイズは文字情報が0サプレスされていると1バイト以上ずれる可能性がありますがDOSのFCコマンドで比較することでずれ位置が判りますよね。 
そこからどこでずれたかバイナリエディタでみればおよそ何の情報かわかります。
慣れてくるとバイナリコードで見ていくと関数の特徴が見えますから大きなソース変更でないならおよそどの辺のコードか見当がつく場合もあります。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。大変勉強になりました。

お礼日時:2008/01/09 22:31

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!