Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.05.08;
Скачать: CL | DM;

Вниз

Ошибка access violation at adress   Найти похожие ветки 

 
Godod ©   (2011-02-02 12:24) [0]

Собственно вылазит эта ошибка при нажатии на кнопку, за которой прикреплен код:
[CODE]procedure TForm1.SnapshotClick(Sender: TObject);

var
i,j:integer; VideoName:WideString;
begin
if not working then
begin
Timer1.Tag:=0;
if RadioButton2.Checked=True then
begin
 FilterGraph.Stop;
 if OpenDialog.Execute then
 begin
   FilterGraph.Active := False;
   FilterGraph.Active := true;
   VideoName:=OpenDialog.FileName;
   if videoname<>"" then
   FilterGraph.RenderFile(OpenDialog.FileName);
 end else exit;
end;

if radiobutton1.Checked then
begin
if combobox1.ItemIndex<>-1 then
    OnSelectDevice
else
begin
showmessage("Пожалуйста выберите устройство ввода!");
exit;
end;
end;

 //для кнопки перевёртыша
 working:=true;
 Snapshot.Caption:="Окончить вычисление траектории";

x1:=0;
x2:=0;
y1:=0;
y2:=0;
point_num:=0;

for j:=1 to Image3.Picture.Height  do
for i:=1 to Image3.Picture.Width do
Image3.Canvas.Pixels[i,j]:=clWhite;

   FilterGraph.Play;
   FilterGraph.Volume:=0;

 if (radiobutton1.Checked) and (SpinEdit_pr.Value<>0) then
 begin
 cooltrayicon1.ShowBalloonHint("SnapSHot","Прогрев камеры...",bitInfo,10);
 delay(SpinEdit_pr.Value*1000);
 end;

  Timer1.Enabled:=true;
  cooltrayicon1.ShowBalloonHint("SnapSHot","Определение траектории начато!", bitInfo,10);

 end
  else
 begin
 //для кнопки перевёртыша
 working:=false;
 Snapshot.Caption:="Начать вычисление траектории";
 cooltrayicon1.ShowBalloonHint("SnapSHot","Определение траектории окончено!",bitInfo,10);
 timer1.Enabled:=false;
 for i:=1 to point_num do
 Image3.Canvas.TextOut(points[i].x+2*pen_Width.Value,points[i].y,inttostr(i));
 FilterGraph.Stop;
 FilterGraph.ClearGraph;
 end;
end;[/CODE]

На форуме уже есть темы с подобными ошибка, да и в гугле их куча, но, к сожалению, почти все перепробовал, но ничего не помогает, может быть вы поможете.
При нажатии на кнопку вылазит окно, где ты выбираешь видео, по которому нужно начертить график(по лазеру на видео), а если выбрана камера, тогда по камере
При прогоне через дебагер, выдается ошибка в файле DSPack в строчке:
[CODE]if Succeeded(QueryInterface(IMediaControl, MediaControl)) then[/CODE]
в моем коде запускается файл dspack после строчки:
[CODE]begin
 FilterGraph.Stop;[/CODE]
А в процессоре ругается на строчку:
[CODE]ntdll.KiFastSystemCallRet:
778564F4 C3               ret [/CODE]

Теперь после за комментирования строки
[CODE]FilterGraph.Stop;[/CODE]
появляется окошко выбора видео, но все равно когда выбираешь видео, оно выдает ту же ошибку и при закрытии тоже.


 
Godod ©   (2011-02-02 12:26) [1]

Извините, чтобы не писать заново все, я скопировал с другого форума, но забыл изменить теги:(


 
Ega23 ©   (2011-02-02 12:30) [2]


> Извините, чтобы не писать заново все, я скопировал с другого
> форума, но забыл изменить теги:(

Думаешь, от этого твой "код" стал читабельнее? Отформатирую как надо, в комментарии укажи точную строку на которой AV выпадает.
Сейчас что-то понять просто невозможно. Да и код ужасен.


 
Ega23 ©   (2011-02-02 12:31) [3]

for j:=1 to Image3.Picture.Height  do
for i:=1 to Image3.Picture.Width do
Image3.Canvas.Pixels[i,j]:=clWhite;

Н-да...


 
И. Павел ©   (2011-02-02 12:48) [4]


for i:=1 to point_num do
 Image3.Canvas.TextOut(points[i].x+2*pen_Width.Value,points[i].y,inttostr(i));


Может выход за границы в массиве points?


 
Ega23 ©   (2011-02-02 12:51) [5]


> Может выход за границы в массиве points?

Выход за границы - это не AV.


 
Dennis I. Komarov ©   (2011-02-02 12:52) [6]


> Ega23 ©   (02.02.11 12:31) [3]

А чего ты хотел от нынешнего образования? Хорошо хоть так :)


 
Anatoly Podgoretsky ©   (2011-02-02 13:28) [7]

> Ega23  (02.02.2011 12:51:05)  [5]

Выход за границы основная причина AV, кроме неинициализированых и попорченых
указателей.


 
Godod ©   (2011-02-02 13:38) [8]

Спасибо, буду пробовать дальше


 
Ega23 ©   (2011-02-02 13:39) [9]


> Выход за границы основная причина AV

О как. Проверил. Думал должно что-то типа Out of bounds сгенерироваться. Ан фигушки...
Спасибо, буду иметь ввиду.


 
Anatoly Podgoretsky ©   (2011-02-02 22:15) [10]

> Ega23  (02.02.2011 13:39:09)  [9]

Out of bounds будет если разрешена проверка диапазонов, по умолчанию
запрещена (необоснованно).



Страницы: 1 вся ветка

Текущий архив: 2011.05.08;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.009 c
15-1295873780
MonoLife
2011-01-24 15:56
2011.05.08
Открыть URL адрес в папке проводника


2-1296806882
Alex_C
2011-02-04 11:08
2011.05.08
Как jpg показать на Canvas


1-1253695891
Игорь
2009-09-23 12:51
2011.05.08
Как правильно передать из DLL?


2-1296601833
Тимоха111
2011-02-02 02:10
2011.05.08
импорт функции в длл


15-1296128732
usrg
2011-01-27 14:45
2011.05.08
Microsoft Visual Studio 2010