Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.11.11;
Скачать: [xml.tar.bz2];

Вниз

Какой объект вызывает ошибку Access Violation?   Найти похожие ветки 

 
temp_and_test   (2007-10-22 10:41) [0]

Здавcтвуйте... я тут столкнулся только что с такой же проблеммой как и в вопросе ниже (вернее задача похожа). Пишет ошибку Access violation at address 00403858 in module project1.exe. Read of address fffffffc. Это если запускать скопилированный exe файл. А если запускать со среды то пишет Priveleged Instruction И НИКАКОГО НАМЁКА НА ОШИБКУ (в плане указания).

Я запускаю Search-> Find Error и попадаю в код что то Free. Вот как узнать какой объект уничтожается. Я и Dr Watson  запускал - ничего не находит.

У меня есть предположение что это кусочек кода глючит, но это только предположение.

procedure Link;
begin
try
   try
     NMEchoAdr_Link := TNMEcho.Create(Form1);
     NMEchoAdr_Link.TimeOut := 150;
     NMEchoAdr_Link.Port := 139;
     NMEchoAdr_Link.Host := IP;
     NMEchoAdr_Link.OnConnect :=Form1.test_IP;
     NMEchoAdr_Link.Connect;
   except
     Exit;
   end;
 finally
   NMEchoAdr_Link.Free;
 end;
end;


 
Reindeer Moss Eater ©   (2007-10-22 10:46) [1]

Form1.test_IP;


 
Reindeer Moss Eater ©   (2007-10-22 10:48) [2]

а объект - NMEchoAdr_Link


 
Сергей М. ©   (2007-10-22 10:48) [3]


> temp_and_test   (22.10.07 10:41)


Потому что неверная логика в коде твоем реализована.


 
korneley ©   (2007-10-22 11:38) [4]


>
> try
>    try
>    ...
>    except
>      Exit;
>    end;
>  finally
>    ...
>  end;
>



Ты в finally собираешься попадать только при отсутствии ошибок/ситуаций? А при их возникновении просто Exit и ни намека на открепление?


 
KSergey ©   (2007-10-22 11:42) [5]

> korneley ©   (22.10.07 11:38) [4]
> А при их возникновении просто Exit и ни
> намека на открепление?

Неужели вы думаете, что Exit обойдет finally стороной??
Впрочем,  я уже задавал в другйо ветке автору сего шедевра вопрос о смысле сих действий...


 
korneley ©   (2007-10-22 11:47) [6]


> Неужели вы думаете, что Exit обойдет finally стороной?
Вообще-то да... Пойду эксперимент поставлю, в целях прояснить для себя ситуацию :)


 
KSergey ©   (2007-10-22 11:50) [7]

> korneley ©   (22.10.07 11:47) [6]
> > Неужели вы думаете, что Exit обойдет finally стороной?
> Вообще-то да...

Это был бы пиец :)


 
Leonid Troyanovsky ©   (2007-10-22 11:57) [8]


> temp_and_test   (22.10.07 10:41)  

> У меня есть предположение что это кусочек кода глючит, но
> это только предположение.

Предполагаю, что и остальные части не менее глючны.

Книжечку к.л. почитай.

--
Regards, LVT.


 
korneley ©   (2007-10-22 11:57) [9]

Эксперимент прошел удачно. Не для меня. Вот век живи, век учись. Действительно, finally при exit работает... А при halt() - нет ;)


 
Leonid Troyanovsky ©   (2007-10-22 12:04) [10]


> korneley ©   (22.10.07 11:57) [9]

> учись. Действительно, finally при exit работает... А при
> halt() - нет ;)

Долго ты так учиться будешь.
Хелп бы почитал, Try...finally statements

--
Regards, LVT.


 
korneley ©   (2007-10-22 12:17) [11]


> Долго ты так учиться будешь
Я же сказал - Век :) Ну или около того. Просто со времен Трубопаскаля, я считал, что exit - это безусловный переход на финиш процедуры. Ошибался. Осознал. Теперь пытаюсь примирить новое знание с прежним мировозрением...


 
korneley ©   (2007-10-22 12:21) [12]

Да и конструкциям, типа
begin
 if <условие> then exit;
 ...
end;

предпочитаю
begin
 if not <условие> then begin
 ...
 end;
end;



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

Форум: "Начинающим";
Текущий архив: 2007.11.11;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.039 c
15-1191351989
ERGef
2007-10-02 23:06
2007.11.11
Передать значение по ссылке в функцию в jave


2-1192506624
dmdel
2007-10-16 07:50
2007.11.11
Закрасить пиксель


2-1192777283
Quart
2007-10-19 11:01
2007.11.11
PickList


2-1192561443
smartleds
2007-10-16 23:04
2007.11.11
Коллеги, подскажите как найти максимальный номер элемента


2-1192699591
DelphiCoder
2007-10-18 13:26
2007.11.11
Перевод Си -> Паскаль...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский