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

Вниз

Ошибка с OpenDialog   Найти похожие ветки 

 
AlexanderS   (2005-08-31 07:42) [0]

Фрагмент кода - процедура клик элемента меню

If OpenDialog1.Execute then
 begin
  System.Assign(File,OpenDialog1.filename);
  System.Reset(File);
  System.Read(file,rec);
  System.Close(GameFile);    
 end;
SwitchToNewType(rec.Type);


в процедуре SwitchToNewType в другом модуле происходит закрытие ранее открытых файлов и открытие новых (возможно, тех же самых) в зависимости от rec.type, так вот если происходит OpenDialog1.Execute то внутри процедуры SwitchToNewType выдается FileExist()=false, Хотя файл никуда не девался и прекрасно открывается если при открытии OpenDialog нажать отмена. Внутренности OPenDialog Тоже не имеют значения...
ЧТо за бред :(


 
Digitman ©   (2005-08-31 09:06) [1]


> AlexanderS


предположим, OpenDialog изменяет текущий каталог, а ты этот факт в теле SwitchToNewType() никак не проверяешь и не учитываешь


 
AlexanderS   (2005-08-31 15:19) [2]

Спасибо :)

Совсем отупел однако :)


 
Anatoly Podgoretsky ©   (2005-08-31 16:46) [3]

Программу надо сделать так, что бы она не зависила от смены каталога в процессе работы, для этого достаточно пользоваться только абсолютными ссылками.


 
AlexanderS   (2005-08-31 21:41) [4]

Глупая идея :) А если пользователь запедалит программу куда ему вздумается? Запоминание GetCurrentDir при запуске рулит :) Три года ничего не писал, однозначно отупел, что даже вопрос в категорию начинающих отправили :)


 
Германн ©   (2005-09-01 02:01) [5]

2 AlexanderS   (31.08.05 21:41) [4]

А пользователь должен иметь право "запедалить программу куда ему вздумается"! Ну, при установке, кроме "Recicled"! :)
Так, что подумай как реализовать правильно совет Anatoly Podgoretsky ©   (31.08.05 16:46) [3]

Добавлю к этому совету только то, что в реестре есть стандартное место для записи каталога, в который установлена программа. Есть в нем же стандартное место для записи информации, специфичной для неё. Например каталог, где хранятся файлы, которые нужно открывать.

Ну и наконец, есть ini-файлы. (Тут, правда, АП меня не поддержит! Увы.) Но вспоминая Ухудшанского, ini-файлы - есть, значит ими можно пользоваться!


 
Anatoly Podgoretsky ©   (2005-09-01 09:20) [6]

Германн ©   (01.09.05 02:01) [5]
Где хранить настройке - есть статья на моем сайте в FAQ.
Там нет запрета на ИНИ



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

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

Наверх




Память: 0.48 MB
Время: 0.031 c
14-1126986860
Мексиканец
2005-09-17 23:54
2005.10.09
Заметил странный факт


4-1123881571
кактусбел
2005-08-13 01:19
2005.10.09
Добавление пункта в стандартное меню проводника


4-1124107383
alex-drob
2005-08-15 16:03
2005.10.09
Отловить событие в другом приложении.


4-1123670306
Urgen
2005-08-10 14:38
2005.10.09
Service


4-1123700179
Grief
2005-08-10 22:56
2005.10.09
Процессы