fc2ブログ

CFileFind::GetLength64()のバグ(MFC6)

GetFilePath()の不具合など、そこらじゅうに公開されてます、でもこの不具合を公開している日本人は・・・

http://www.codeproject.com/buglist/getlength64bug.asp.asp
<ソース抜粋>
struct {
DWORD nFileSizeHigh;
DWORD nFileSizeLow;
} WIN32_FIND_DATAx data;
INT64 GetLength64()
{
return dara.nFileSizeHigh + (data.nFileSizeHigh << 32);
}
判る人には判る、とてつもない不具合(MFC6)
せめて、dara.nFileSizeHigh + (data.nFileSizeHigh * 0x100000000) とすれば大丈夫だった(?)
MFC7以降は、GetLength64()はINT64 GetLength()に統合されてます(バグもない?)。
ちなみに、CFile::GetStatus()も4G以上をアクセスするとアサート(デバッグ環境)。
Posted by CabinUltraMild URL
スポンサーサイト



7-zip32.dll Ver4.42.00.02

Ver4.42.00.01 でのエンバグの修正です。
このバージョンより条件により -scsWIN スイッチを自動で追加していましたが -- スイッチを使った際にこのスイッチが働かない問題が有りました。
例えば
l -- "c:\temp\foo.7z"
の場合
l -- "c:\temp\foo.7z" -scsWIN
となりfoo.7z内の-scsWINと言う名のファイルの情報を表示せよという命令になってました。
それから内部自己解凍書庫を作れませんでした。
この場合は-sfxスイッチを--の前に付けても自動で -sfx…(一時SFXファイルの出力パス)と変更し付け足してたのでダメでした。

以下1件だけですがバージョンアップ詳細です

続きを読む

新規記事の投稿


月別アーカイブ
カテゴリー
リンク
ブログ内検索
RSSフィード