Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Делфи _ Stream read error

Автор: Tan 25.11.2011 19:34

Доброго дня ув. форумчане. Сталкнулся с такой проблемой - моя Delphi программа работает с файлом и при каждом своём запуске считывает информацию с него (формат .bmp). В рандомном порядке я получаю ошибку Stream read error, которая обычно возникает, когда какое-либо другое приложение так же пользуется этим файлом. Но я проверил и ни 1 из приложений не может использовать этот файл - так же просто перезагружал компьютер и первым делом запускал программу - тоже самое, хотя на автозапуске системы никаких лишних программ нету. Буду рад любым мыслям и идеям.

Автор: IUnknown 25.11.2011 22:41

Цитата
Но я проверил и ни 1 из приложений не может использовать этот файл - так же просто перезагружал компьютер и первым делом запускал программу - тоже самое, хотя на автозапуске системы никаких лишних программ нету.
Значит, предположение о том, что что-то держит файл - неверное. Показывай код, выдающий ошибку, либо обращайся к телепатам за помощью. Без исходника ничего сказать невозможно.

Автор: Tan 25.11.2011 22:47

Cпасибо за ответ. Есть картинка 256 x 256, переменная TexFileName содержит название файла, что находится в корневой директории проекта.

const
TexWidth = 256;
TexHeight = 256;
...
TexSizeX := TexWidth;
TexSizeY := TexHeight;
bitmap := TBitmap.Create;
bitmap.LoadFromFile(TexFileName);
For i := 0 to TexSizeX - 1 do // вот сюда кидает программу когда выдаётся ошибка
For j := 0 to TexSizeY - 1 do
begin
bits [i, j, 0] := GetRValue(bitmap.Canvas.Pixels[i,j]);
bits [i, j, 1] := GetGValue(bitmap.Canvas.Pixels[i,j]);
bits [i, j, 2] := GetBValue(bitmap.Canvas.Pixels[i,j]);
end;

Автор: IUnknown 25.11.2011 22:53

Картинка чем создавалась? Фотошопом? Попробуй ее пересохранить другим редактором, GIMP-ом, или ACDSee, к примеру. На RSDN как-то была тема, что сохраненные фотошопом битмапы не грузятся через LoadFromFile, а пересохраненные (их размер - на 2 байта меньше, чем у фотошопленных) - прекрасно грузятся.

Автор: Tan 26.11.2011 2:48

Да Photoshop. Тупо пересохранил через Paint, на мой взгляд проблема исчезла, никогда в жизни бы не подумал, что виноват редактор, ведь формат .bmp в теории не должен менять своей структуры в зависимости от редактора. Большое спасибо за помощь.