2009-05-09 5 views
2

私はコマンドラインコンパイラmxmlc.exeを使用してSWFを構築しています。コンパイラは出力ファイルのサイズをstdoutの一部として書き込みます。実際のソースコードを変更せずにコンパイラを複数回実行すると、ファイルサイズが上下に数バイトずつバウンスすることがわかります。Flexコンパイラはまったく同じソースコードの連続したコンパイルでさまざまなファイルサイズを生成するのはなぜですか?

C:\>mxmlc.exe Gallery.as 
C:\Gallery.swf (28443 bytes) 

C:\>mxmlc.exe Gallery.as 
C:\Gallery.swf (28442 bytes) 

C:\>mxmlc.exe Gallery.as 
C:\Gallery.swf (28440 bytes) 

C:\>mxmlc.exe Gallery.as 
C:\Gallery.swf (28442 bytes) 

なぜこのようなことになるかは考えられません。毎回出力ファイルを削除しても、再生成されたファイルサイズはこのように変化します。

なぜでしょうか?

答えて

9

Flexコンパイラには、作成された日付や時刻など、ビルドからビルドに変わる情報がSWFに含まれています。その後、SWFが圧縮されます。時々、圧縮は、さまざまなメタデータ、つまりファイルサイズのわずかな変更に対して、他よりも少し良く機能します。

http://livedocs.adobe.com/flex/3/html/help.html?content=compilers_16.html#145380

+0

ありがとうございます。 Stack Overflowについての最初の投稿もそうですね。サイトへようこそ! –

+0

ありがとう...私は助けてうれしいです。私はあなたのコミッションに返信するのに十分な評判ポイントを得ました。 :-) – natacado

関連する問題