Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2005.09.11;
Скачать: [xml.tar.bz2];

Вниз

вылезает ошибка про отсутст. 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.011 c
14-1124115907
Андрей Жук
2005-08-15 18:25
2005.09.11
Зато мы в ЧГК играть умеем :)


4-1122024870
DimaBr
2005-07-22 13:34
2005.09.11
Handle окна


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


14-1124230275
VEG
2005-08-17 02:11
2005.09.11
Поиск ветки


14-1124113294
oldman
2005-08-15 17:41
2005.09.11
А среди программистов много стройбатовцев?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский