Форум программистов, компьютерный форум, киберфорум
Delphi
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
14 / 14 / 2
Регистрация: 03.02.2010
Сообщений: 142

Access Violation при BitMap.Create

28.05.2011, 13:40. Показов 1502. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго Времени Суток! У меня в коде используется двусвязный список типа

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
Tinf=record {тип данных, который будет храниться в элементе списка}
    n,alb:string[255];  //name, album
    iz,drw:boolean; //iz-фото в папке izbrannoe ,draw-вывести изображение
    b:TBitMap;//изображение фотографии
  end;
 
List=^T_List;  {Указатель на элемент типа T_List}
 
T_List=record 
    data:TInf;  {данные, хранимые в элементе}
    next,       {указатель на следующий элемент списка}
    prev:List;  {указатель на предыдущий элемент списка}
  end;
Сначала поля "b:TBitMap;//изображение фотографии" не было и всё работало нормально, после добавления поля в строке
Delphi
1
2
3
4
5
6
7
tmp0:=spisnach;
while tmp0<>nil do
  begin
  tmp0^.data.b.Create;//здесь появляется Access Violation
.....................................
  tmp0:=tmp0^.next;
  end;
начала появлятся ошибка 'Access violation at address 004843F7 in module 'SortFoto0.exe'. Read of address 00000000'

Хотел спросить совета, чем могла быть вызвана эта ошибка и как от неё можно избавиться?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
28.05.2011, 13:40
Ответы с готовыми решениями:

Access violation при сравнении изображений
делаю программу для сравнения изображений перевожу в битмапы и потом смотрю по цвету пикселя картинки одного размера вот код ...

TList. Ошибка Access Violation при создании.
Имеется такая структура данных: type TMyList = class private FMyList: TList; public property MyList: TList read FMyList...

Access violation at address при запуске потоков
Всем привет, запускаю несколько потоков но получаю ошибку http://************/13xzpg Код запуска потоков procedure...

1
 Аватар для Mawrat
13114 / 5895 / 1708
Регистрация: 19.09.2009
Сообщений: 8,809
29.05.2011, 18:29
Надо заменить:
Delphi
1
tmp0^.data.b.Create;
на:
Delphi
1
tmp0^.data.b := TBitmap.Create;
И ещё надо не забыть уничтожить созданные объекты типа TBitmap при уничтожении элементов списка. В коде уничтожения (удаления из памяти) элементов списка, для каждого элемента:
Delphi
1
2
  tmp0^.data.b.Free;
  Dispose(tmp0);
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
29.05.2011, 18:29
Помогаю со студенческими работами здесь

Access Violation при вызове метода Open для Sqlquery из потока
Здравствуйте, очень нужна помощь. Использую dbexpress для работы с Oracle. В проекте есть модуль данных, на котором расположены компоненты...

Delphi 2010: получаю Access Violation при попытке настроить Build Configuration
Кликаю ПКМ на конфигурации &quot;Release&quot;, потом выбираю пункт &quot;Edit...&quot; и вылезает Access Violation. Полный текст: &quot;Access violation...

Access Violation в подпрограмме
Доброго вечера, не сильно разбираюсь в Deplhi, почти написал программу, которая по заданным числам массива из 11 элементов, сначала...

AssignFile и access violation
Подскажите, в каких случаях может возникать ошибка access violation в строке с AssignFile? // Сохранение ответа procedure...

Access violation at adress
Собственно говоря, вот элемент кода, ошибка при попытке выполнить сроку setlength(masofFD2, fv2); for i:=0 to length(arofd)-1 do ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru