Форум: "Начинающим";
Текущий архив: 2006.06.04;
Скачать: [xml.tar.bz2];
ВнизApplication.terminate а программа продолжает работать Найти похожие ветки
← →
Tempora (2006-05-18 09:53) [0]Есть процедура Form1.OnShow внутри которой код:
.....
if DirectoryExists(ini.ReadString("Local","loc_path","c:"))= false then begin
Application.MessageBox(
"Локальная папка не существует.",
"Ошибка",
MB_OK + MB_ICONERROR);
application.Terminate;
end;
........что-то дальше
Я знаю что directoryExists точно должно вернуть false, оно и возвращает это и выводит сообщение об ошибке, но работа программы продолжается, идет выполнение команд которые указаны после этого условия.
Пожалуйста, подскажите, что это?
← →
Сергей М. © (2006-05-18 10:03) [1]после Application.Terminate напиши Application.ProcessMessages
← →
ЮЮ © (2006-05-18 11:00) [2]поместить этот код в dpr.
Зачем созавать форму и уже в OnShow решать, что это было ошибкой?
← →
Tempora (2006-05-18 11:59) [3]
> после Application.Terminate напиши Application.ProcessMessages
Не помогает.
← →
Сергей М. © (2006-05-18 12:02) [4]
> Tempora (18.05.06 11:59) [3]
Ну и выбрось тогда из головы эту затею.
А для новой затеи прислушайся к [2]
← →
ЮЮ © (2006-05-18 12:05) [5]Кстати, такое работает как раз в OnShow:
Tester.Streamer.LoadToStringList(sl, "Marks.ini");
if sl.Count = 0 then begin
Application.MessageBox(
PChar("Не найден файл параметров " + Tester.Streamer.ZipName + "\" +
"Marks.ini"),
"Ошибка инициализации", 0
);
Close;
end;
← →
Сергей М. © (2006-05-18 12:10) [6]
> ЮЮ © (18.05.06 12:05) [5]
Это если форма - основная.
А у автора неизвестно какая
← →
ASoft (2006-05-18 12:14) [7]
> идет выполнение команд которые указаны после этого условия.
Если не хотите, чтобы в теле процедуры продолжалось условие после application.Terminate поставьте :
...begin
Application.Terminate;
Exit;
end;
но, возможно, правильнее будет [2]
← →
Tempora (2006-05-18 12:27) [8]
> begin
> Application.Terminate;
> Exit;
> end;
Спасибо, работает.
Всем спасибо за советы. В следующий раз буду так и делать.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.06.04;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.04 c