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

Вниз

вылезает ошибка про отсутст. mdx файла   Найти похожие ветки 

 
serjufa   (2005-07-29 13:58) [0]

у меня появилось 2 вопроса.

1.Сначала цитата  
[флажок Stop on Delphi Exceptions. Когда данная опция включена, отладчик приостанавливает выполнение программы при возбуждении исключения. Если же она выключена, исключения VCL обрабатываются обычным образом — отображается панель с сообщением, информирующим пользователя о характере нарушения, совершенного его программой.

Когда опция Stop on Delphi Exceptions включена, отладчик делает остановку при исключениях даже в том случае, когда исключение обрабатывается вашей программой. Если вы не хотите, чтобы отладчик останавливал программу при любом исключении, выключите данную опцию.
]

Можно ли программно временно отключить описанное выше

2. Открываю сторонние dbf. К одной из них "забыли" приложить мультииндекс-й файл. Поэтому вылезает ошибка и останавливает программу. Никак не могу побороть эту проблему

{$WARNINGS OFF} //Отключить вывод предупреждений.

   try
     Active := True; //здесь вылезает ошибка про отсутст. mdx файла
   except
     // при неудаче
     MDX_Error(TableName);
     Active := True;
   end;


Приведу текст "лечения" dbf

// ************************************************************************ ****
function  MDX_Error( TableName :string)  : boolean;
var
 my_handle: integer;
 buf: byte;
begin
   buf:=$00;
   my_handle:=FileOpen(W_zapros.tbl_Source.TableName,$0001);
{$I-}
   if (FileSeek(my_handle,28,1)<>-1) then
    begin
    FileWrite(my_handle,buf,1);
    FileClose(my_handle);
    W_zapros.tbl_Source.Open;
    end;
{$I+}
end;


 
Reindeer Moss Eater ©   (2005-07-29 14:17) [1]

except
// при неудаче
MDX_Error(TableName);
Active := True;
end;

А если исключение совершенно не связано с отсутствием индекса?
А ты безусловно вызываешь MDX_Error в котором правишь заголовок.


 
Reindeer Moss Eater ©   (2005-07-29 14:19) [2]

function  MDX_Error( TableName :string)  : boolean;
var
my_handle: integer;
buf: byte;
begin
  buf:=$00;
  my_handle:=FileOpen(W_zapros.tbl_Source.TableName,$0001);
{$I-}
  if (FileSeek(my_handle,28,1)<>-1) then
   begin
   FileWrite(my_handle,buf,1);
   FileClose(my_handle);
   W_zapros.tbl_Source.Open;
   end;
{$I+}
end;

Функция просто блеск.



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

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

Наверх




Память: 0.47 MB
Время: 0.038 c
1-1124470769
Пантелеев Иван
2005-08-19 20:59
2005.09.11
Фокус приложения


4-1122015926
Gear
2005-07-22 11:05
2005.09.11
Имя запускаемого файла.


9-1116409473
Buzzz
2005-05-18 13:44
2005.09.11
Земля в ГЛС


2-1123268388
Peter1
2005-08-05 22:59
2005.09.11
есть ли разница в объявлении таких процедур?


14-1124274282
Дмитрий_Б
2005-08-17 14:24
2005.09.11
Навеяно недавней веткой