前のメッセージ 一覧 次のメッセージ
■Topic: [1070] 原因がわかりません・・・ トポ (^_^)
■Reply: [1071] Re:1070)原因がわかりません・・・ れな (^_^)
「ICQについての話題」掲示板の記事No.[777]は
ZENONさんが調べて教えてくださった結果をそのまま転載したものです。
書いている内容が、どういう事か分かり難いかもしれないので簡単に説明します。
ICQが開発された当時のパソコンは、現在と違いファイルもHDDの容量も小さく
ファイル受信時必要なHDD空き容量の計算に最大1GB(1,073,741,824B)を想定していたものと思われます。
その為、空き容量の計算は1,073,741,824Bの桁数、10桁の1桁手前、9桁の数字を見て判断しているようです。
受信するファイルサイズが「282,284,548B」の時
・HDD空き容量 :73,444,368,384 の場合
後ろ9桁の数字は「444,368,384」なので「444,368,384−282,284,548=162,083,836」転送可
・HDD空き容量 :73,188,003,840 の場合
後ろ9桁の数字は「188,003,840」なので「188,003,840−282,284,548=▲94,280,708」転送不可
※空き容量は1GBより遙かに大きいにもかかわらず
後ろ9桁の数字が受信するファイルサイズより小さいので転送不可になってしまいます。
・HDD空き容量 :72,809,308,160 の場合
後ろ9桁の数字は「809,308,160」なので「809,308,160−282,284,548=527,023,612」転送可
※10桁目の数字が、先の2つ目の例「3」より1小さい「2」になっても
後ろ9桁の数字は受信するファイルサイズより大きい「809,308,160」なので転送可になります。
つまり、後ろ9桁の数字だけを見て判断していると言えますよね?
ICQの開発スタッフが、この問題に気付いて、現在の一般的な環境に対応するよう修正するまで
空き容量を調節してオーバーフローしないようにするしかないと言う事です。