• 締切済み

開発環境の違いによるモジュールの相違点

同じプログラムを異なるPCでリビルドしてみたのですが、出来上がったEXEファイルをバイナリで比較すると、2500kb位の違いがありました。 一体何が影響しているのでしょうか。 ちなみにVS 6.0を使用しています。

みんなの回答

  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.3

>ちなみに、EXEファイル自体のサイズはリビルド前後で全く違いはありませんでした。 同じPCでも、コンパイルごとにバイナリで比較するとEXEの内容変わってくるのは知ってます?

kurosu_z
質問者

補足

ご回答ありがとうございます。 作成日時が違うので、バイナリで比較するとちょっとだけ違うのは知っています。 実際、比較してみましたが、テキスト出力で8行位だったかと思います。

  • BILLY-J
  • ベストアンサー率57% (60/105)
回答No.2

私も同じような経験が有ります。 大分前に開発されたプログラムの開発環境を中間ファイルごと保存 した CD-ROM から復元したのですが、ビルドしてみると出力ファイル の大きさが 2KB 程増えていました。 #1さんが提示した条件も踏まえると、 1.コンパイルオプション プロジェクトファイル(メイクファイル)をそのまま使用している ので同一。ビルド実行後のプロジェクトファイルと CD-ROM 内の物 とで比較しても、コンパイルオプション、リンクオプションは同じ。 リビルドせずに昔の中間ファイルを用いてビルドした場合でさえも 出力ファイルのサイズが異なりました。 2.ビルドタイプ(デバッグorリリース等) 同じ。 但し、質問者さんのケースでは2500KB(=2.5MB ?)もサイズが違う為、 リリース版/デバッグ版で違っている可能性も有りますね。 3.サービスパック VS の SP は同じ版数です。 但し、私の場合は前任の担当者が NT4.0 で開発していた可能性も 棄て切れません。もう前任者は居ないので確認できませんが… Windows の種類や SP が異なればサイズが変わってくる可能性は あるとの話を聞きました。MS からの正式な情報では有りませんが。 私の場合、再度細かい動作確認を行う事で、サイズ相違については 気にしないことにする、という所に落としました。 でも気になりますよね(笑)

kurosu_z
質問者

お礼

ご回答ありがとうございます。 コンパイルオプションて、プロジェクトファイルに含まれているファイルのことだったんでしょうか? 私の場合も同じでした。 ビルドタイプもリリース版です。 2.5MBっていう数字は具体的に書かなかったんで、誤解を招いたかもしれません。 具体的に言うと、ファイルをバイナリで比較してその結果をtxtで落とした時のtxtの容量が2.5MBでした。 ちなみに、EXEファイル自体のサイズはリビルド前後で全く違いはありませんでした。 サービスパックも同じですね。 オプションの違いがあるのかと思ってVSをインストールし直しましたよ。 私もわかんないので、動作確認をよくすることで気にしないことになりました(笑)

  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.1

1.コンパイルオプション 2.ビルドタイプ(デバッグorリリース等) 3.サービスパック は同一?

kurosu_z
質問者

お礼

ご回答ありがとうございます。 すみません、コンパイルオプションてなんでしょう? 初心者なもので…設定かなにかでしょうか? ビルドタイプはリリースでやっています。 サービスパックも同様のもので行っています。

関連するQ&A