Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.09.2007, 17:01   #1
Carbon
JAVA BEAN
Участник клуба
 
Аватар для Carbon
 
Регистрация: 22.04.2007
Сообщений: 1,329
По умолчанию Access Violation

Здравствуйте. Программа запускает pe-файл. Как мне перехватить от него исключение типа access violation? И как аварийно остановить её работу в случае возникновения таковой?
Carbon вне форума Ответить с цитированием
Старый 18.09.2007, 17:16   #2
Shuraken
Форумчанин
 
Аватар для Shuraken
 
Регистрация: 16.04.2007
Сообщений: 298
По умолчанию

Код покажи, плиз.
Не надо ничего усложнять. Все достаточно тривиально.
Shuraken вне форума Ответить с цитированием
Старый 18.09.2007, 17:33   #3
Carbon
JAVA BEAN
Участник клуба
 
Аватар для Carbon
 
Регистрация: 22.04.2007
Сообщений: 1,329
По умолчанию

Цитата:
Сообщение от Shuraken Посмотреть сообщение
Код покажи, плиз.
Причём здесь код? Запуск стандартный (WinExec вроде). Меня интересует, как перехватить это сообщение и как завершить прогу неестественным путём.
Carbon вне форума Ответить с цитированием
Старый 18.09.2007, 17:42   #4
Shuraken
Форумчанин
 
Аватар для Shuraken
 
Регистрация: 16.04.2007
Сообщений: 298
По умолчанию

Ну тогда
try
WinExec('notepad', 'myfile.pe', SW_SHOWNORMAL);
except
on E.Exception do
begin
ShowMessage(E.Message);
Application.Terminate;
end;
end;

попробуй так.
Не надо ничего усложнять. Все достаточно тривиально.
Shuraken вне форума Ответить с цитированием
Старый 18.09.2007, 17:45   #5
Carbon
JAVA BEAN
Участник клуба
 
Аватар для Carbon
 
Регистрация: 22.04.2007
Сообщений: 1,329
По умолчанию

Попробую, а ты уверен, что поможет?
Carbon вне форума Ответить с цитированием
Старый 18.09.2007, 18:04   #6
Shuraken
Форумчанин
 
Аватар для Shuraken
 
Регистрация: 16.04.2007
Сообщений: 298
По умолчанию

Может, все-таки код покажешь? В такой конструкции я уверен. Что делается у тебя, я не знаю.
Не надо ничего усложнять. Все достаточно тривиально.
Shuraken вне форума Ответить с цитированием
Старый 18.09.2007, 18:16   #7
Carbon
JAVA BEAN
Участник клуба
 
Аватар для Carbon
 
Регистрация: 22.04.2007
Сообщений: 1,329
По умолчанию

У меня пока ничего не делается. Как запускать прогу я знаю, а вот как её останавливать...

Вот это:
Application.Terminate;

слуайно не останов самого приложения? Что-то мне подсказывает, что этим я запущенную прогу не остановлю.
Carbon вне форума Ответить с цитированием
Старый 18.09.2007, 18:35   #8
_SERGEYX_
Участник клуба
 
Аватар для _SERGEYX_
 
Регистрация: 07.07.2007
Сообщений: 1,518
По умолчанию

А если
Halt; ????
Не-а...
Вроде должно работать так...

Try
{запустить приложение}
except {если оно не запустилось...}
ShowMessage('Не запустилось.');
Exit;
end;

Но если чужое приложение запустилось и глюкануло (например, зависло) - тогда хз.
Наверно, нужно узать его дескриптор и по дескриптору убить процесс...

Последний раз редактировалось _SERGEYX_; 18.09.2007 в 18:43.
_SERGEYX_ вне форума Ответить с цитированием
Старый 18.09.2007, 18:44   #9
Carbon
JAVA BEAN
Участник клуба
 
Аватар для Carbon
 
Регистрация: 22.04.2007
Сообщений: 1,329
По умолчанию

Просто нужна прога для проверки решений олимпиады. Решения разные бывают... И в тайм-лимит не укладываются...
Carbon вне форума Ответить с цитированием
Старый 18.09.2007, 18:46   #10
Carbon
JAVA BEAN
Участник клуба
 
Аватар для Carbon
 
Регистрация: 22.04.2007
Сообщений: 1,329
По умолчанию

Нужно именно отловить глюк ДРУГОГО запущенного приложения. И завершить его (можно процесс убить?).
Carbon вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Access Violation SunKnight Общие вопросы Delphi 2 05.06.2008 16:46
Access violation at address.. RegentM Общие вопросы Delphi 4 01.11.2007 03:46
Access violation на строке вида StrLCopy(PChar(st1),PChar(st2),10); malor Общие вопросы Delphi 1 11.07.2007 13:39
Возникает исключение "Access violation at address ... Наташка Общие вопросы Delphi 1 18.05.2007 12:16