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

Вниз

Delphi и XML datapacket   Найти похожие ветки 

 
Viktor   (2004-10-25 13:56) [0]

Возникла следующая проблема.
На Delphi написана программа, которая в качестве базы использует
xml datapacket через ClientDataSet,перед у становкой программы ставится MIDAS.DLL.
При запуске программы она подключает файл базы с помощью следующего кода
  with cdsRazdPath do
  try
     if Active then Active:=false;
     FileName:=CuDir()+"dat\razdPath.xml";

{CuDir()-возвращает директорию в котор.находится программа
наличие,проверяется наличие"\" в конце}

     Active:=true;
  except
     MessageDlg("Не удалось прочитать  
          файл...",mtError,mbOK],0);
  end;

При запуске на некотрых компьютерах с WindowsXP, в данной процедуре возникает исключительная ситуация, причём файл razdPath.xml полностью очищается. Протестировать не получилось,
на всех наших машинах работает нормально.
Буду благодарен за любой совет.


 
Reindeer Moss Eater ©   (2004-10-25 14:06) [1]

 except
    MessageDlg("Не удалось прочитать  
         файл...",mtError,mbOK],0);
 end;


Если бы не было этого дурацкого блока обработки исключения, ты бы уже знал причину ошибки


 
sniknik ©   (2004-10-25 14:09) [2]

> Буду благодарен за любой совет.
замени безсмысленное
except
 MessageDlg("Не удалось прочитать файл...",mtError,mbOK],0);
end;
на
except
 on E: Exception do DoIfError();
 MessageDlg("Ошибка при чтении файла..."#10#13+
             E.ClassName+#10#13+
             E.Message
            ,mtError,mbOK],0);
end;
а то что это выдаст на той машине где возникает исключительная ситуация копируй сюда.


 
sniknik ©   (2004-10-25 14:10) [3]

сорри,  DoIfError(); надо убрать.


 
Viktor   (2004-10-25 15:31) [4]

Наконец-то пользователи прислали сообщение.
Программа выдаёт следующее:

EsafeArrayLocked Error
Variant or safe array is locked


 
DSKalugin ©   (2004-10-26 12:51) [5]

Ребята, извините что вмешиваюсь... А зачем вообще базу в XML формате хранить??? Это похоже на какое-то извращение или я отстал конкретно от прогресса. Где можно образумиться по этой теме и вычитать преимущества такого изощренного способа?
Просьба дать сылочки раз вы в этом направлении работаете.


 
sniknik ©   (2004-10-26 14:38) [6]

попробуй у себя на "чистую" машину поставь то же что клиентам даеш, но(!!!) не ставь midas.dll. ошибка не похожая получается?
или уже у клиента стоит более старая версия (как мне кажется ошибка именно с midas.dll)
как ты ее ставиш? если просто переписываеш, толку не будет. пусть руками положат ее из твоей установки (совместить с версией программы) в системный каталог (D:\WINNT\system32\ например)
и зарегистрируют
regsvr32.exe D:\WINNT\system32\midas.dll

после пробуют, что получилось. (???)



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

Форум: "Базы";
Текущий архив: 2004.11.21;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.033 c
3-1098548785
Bend
2004-10-23 20:26
2004.11.21
Упаковка таблицы.


14-1099672157
ИМХО
2004-11-05 19:29
2004.11.21
PDF документы


1-1099547174
diabolik_krsk
2004-11-04 08:46
2004.11.21
Автоматический переход фокуса с TEdit на TEdit


14-1099639422
syte_ser78
2004-11-05 10:23
2004.11.21
помогите с параметрами командной строки winrar


4-1097410364
Stany
2004-10-10 16:12
2004.11.21
запуск программы с обработкой кодов возврата





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский