![]() |
|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Уважаемый
Форумчанин
Регистрация: 04.07.2010
Сообщений: 318
|
![]()
procedure TForm1.FormCreate(Sender: TObject);
var a,b,c,d: string; rbb: integer; begin try dir := GetCurrentDir; fn:= 'C:\CNC SS v4.02\Config\Auto'; AssignFile(f,fn); Reset(f); readln(f,a); Form1.ComboBox1.Text:= a; readln(f,b); Form1.ComboBox2.Text:= b; readln(f,c); Form1.ComboBox3.Text:= c; readln(f,d); Form1.ComboBox4.Text:= d; closefile(f); SelLang; Form1.Timer1.Enabled:= True; except On EFilerError do begin rbb:=MessageDlg('Ошибка установки.Переустановите приложение заново.', mtError, [mbOk], 0) ; exit; end; end; end; Не понимаю, что не так? Программа при создании формы должна открывать файл, если он не обнаружен то вывести сообщение и не запускаться. А она все равно запускается и вылетает ошибка Нет доступа к файлу и виснет потом. Файл на месте всегда, это для исключения, если его не будет
даешь высокое напряжение
|
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 08.10.2010
Сообщений: 101
|
![]()
Даже если с exe`шника запустить?
"Думаешь, будет трудно? Конечно, будет! Но, только закаляя дух, людьми становятся люди!"
|
![]() |
![]() |
![]() |
#3 |
Уважаемый
Форумчанин
Регистрация: 04.07.2010
Сообщений: 318
|
![]()
Для проверки я и запускаю с ехе-шника, предварительно специально убрав этот файл. Компилирую когда файл на месте. Мне и нужно с ехе-шника.
даешь высокое напряжение
|
![]() |
![]() |
![]() |
#4 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
скажите а зачем вы специализируете обработчик исключения?
да и знаете ли зачем служит тип EFilerError? Цитата:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
![]() |
![]() |
![]() |
#5 |
Уважаемый
Форумчанин
Регистрация: 04.07.2010
Сообщений: 318
|
![]()
убрал, не помогает, она все равно начинает загружаться и искать файл. потом ошибка Что файл не найден и висит все
даешь высокое напряжение
|
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 06.01.2008
Сообщений: 180
|
![]()
Уважаемый, оператором Exit; вы вышли из процедуры/функции.
Вам же нужно что-то вроде Halt; |
![]() |
![]() |
![]() |
#7 |
Уважаемый
Форумчанин
Регистрация: 04.07.2010
Сообщений: 318
|
![]()
мне нужно завершить процедуру Form1.Create и завершить приложение не запуская дальше
даешь высокое напряжение
|
![]() |
![]() |
![]() |
#8 | |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,527
|
![]() Цитата:
Halt это завершить приложение. Если завершаем приложение, то естественно будет завершена работа ВСЕХ процедур. Application.terminate другой способ завершения приложения.
программа — запись алгоритма на языке понятном транслятору
|
|
![]() |
![]() |
![]() |
#9 |
Старожил
Регистрация: 13.08.2009
Сообщений: 2,581
|
![]()
Надо быстрее код дать, пока "специалисты" не насоветовали:
Код:
Project/View Source: Код:
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
|
![]() |
![]() |
![]() |
#10 | |
Старожил
Регистрация: 13.08.2009
Сообщений: 2,581
|
![]() Цитата:
В его коде Exit не выполняется. Следовательно, его замена на Halt/Terminate ничего не даст.
Опытный программист на C++ легко решает любые не существующие в Паскале проблемы.
|
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Обработка исключений | Ckomoroh | Общие вопросы Delphi | 6 | 21.03.2011 08:52 |
обработка исключений | user666 | Помощь студентам | 36 | 27.08.2010 18:00 |
ошибка при закрытии формы после обработки в потоке | furstenberg | Общие вопросы Delphi | 7 | 05.07.2010 12:19 |
Обработка исключений | _-Re@l-_ | Общие вопросы Delphi | 3 | 17.06.2010 08:53 |
WebBrowser и ошибка 404, идея ее обработки | celovec | Работа с сетью в Delphi | 3 | 22.02.2009 19:40 |