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

Вниз

Ошибка "Разрушительный сбой"   Найти похожие ветки 

 
galexis ©   (2005-05-31 11:01) [0]

Добрый день!
Спасите кто может! Гружу данные из XML файла в базу FireBird. Для преобразования XML файла в датапакет использую TXMLTransformProvider и TClientDataSet. В Uses прописана MidasLib. Делаю ClientDataSet.Open
После нескольких минут вылетает ошибка "Разрушительный сбой", а иногда не вылетает и загрузка проходит нормально.
Пробовал вместо MidasLib использовать Midas.dll. Ошибка меняется на другую: Access violation in Midas.dll. И так же с попытки 5 загружается нормально. Подскажите в чем дело?
Спасибо.


 
evvcom ©   (2005-05-31 11:18) [1]

"Разрушительный сбой" я встречал, только когда возникает ошибка в COM-сервере. Ты используешь TXMLTransformProvider - это наверняка класс-обертка на COM-сервер. Вероятнее всего, твой XML файл содержит какие-то ошибки, во всяком случае с точки зрения COM-сервера. "Иногда вылетает, а иногда не вылетает" - на одном и том же файле или все же на разных? Если на одном и том же вылетает постоянно, то ищи в нем ошибку.


 
DSKalugin ©   (2005-05-31 11:24) [2]

Напиши парсер, который сделает проверку структуры XML файла. В итоге может быть приспособишь его для закачки данных.
Я себе так и сделал.
Это лучше чем связываться с закрытыми чужими разработками.
в любой момент можно запустить отладку и найти причину глюков.
Не будешь же ты связываться с мокрософтом и просить их выяснить причину. Тем более что они своих пользователей поддержкой не балуют.


 
galexis ©   (2005-05-31 11:29) [3]

На одном и том же вылетает. Других и нет пока. Этот файл выгрузка из другой базы. Мне надо написать ПО для загрузки в свою БД. На самом деле все еще сложнее. Я использую две пары TXMLTransformProvider и TClientDataSet. Открываю одну пару, затем вторую. Если открывать только одну из пар, то все работает хорошо. Т.е. ставлю брекпойнт перед открытием второго клиентдатасета, первый открывается нормально, а при открытии второго вылетает ошибка. А две пары - потомучто видимо TClientDataSet имеет ограничение на количество вложенных в него датасетов и я не могу открыть сразу всю запись из XML Файла, а базу нужно вставлять всю запись!


 
galexis ©   (2005-05-31 11:45) [4]


> DSKalugin ©

Про парсер я уже тоже думал, но времени нет. Данные надо получать как всегда еще вчера. И еще один файл из другой базы висит. А так вроде все просто - открыл - загрузил.
Слежу за памятью в диспетчере задач, как только подходит к 150 Мб, так и вырубается. А уж если перешла предел, то работает.


 
galexis ©   (2005-05-31 12:01) [5]

И XML файл то всего 10 Мб. В перспективе свыше 100 Мб. Видимо такие вообще не загрузить. И зачем этот XML спрашиватеся тогда?


 
DSKalugin ©   (2005-05-31 13:39) [6]

XML - дань моде. Мокрософт пытается навязать свою новую технологию. Типа стандарт формата для обмена информацией меж разными платформами и вэбслужбами. Гемор вобщем очередной :-))

попробуй увеличить у себя объем виртуальной памяти, если он ограничен. А парсер написать таки придется


 
galexis ©   (2005-05-31 15:18) [7]


> DSKalugin ©

У моего компа 1 Гб ОЗУ и столько же виртуальной, куда уж больше :(
Я боюсь дело не в парсере, а в midas. Попробовать бы midas.dll от Delphi 7 или вообще Delphi 8. В борланд что ли пожаловаться :)


 
Rule ©   (2005-05-31 15:22) [8]

galexis ©   (31.05.05 15:18) [7]
В борланд что ли пожаловаться :)

пошлют


 
evvcom ©   (2005-05-31 15:54) [9]


> В борланд что ли пожаловаться

Интересно, на что? На пиратскую копию? Или некачественный кряк? А скорее все же надо искать причины не в корявости сторонних библиотек, которые отлаживаются не первый год, а в своем коде.


 
galexis ©   (2005-05-31 16:00) [10]


> evvcom ©   (31.05.05 15:54) [9]

Пожаловаться на библиотеку midas.dll. Я могу вообще убрать свой код создав новый проект. Все равно будет работать примерно каждый 5-й раз. И Delphi у меня лицензионный, но чужой :)
Я оставил от XML файла 4 Мб. Сейчас проверю влияние размера файла.


 
Rule ©   (2005-05-31 16:03) [11]

galexis ©   (31.05.05 16:00) [10]
на Мидас надо отдельную лицензию ....


 
galexis ©   (2005-05-31 16:09) [12]

> Rule ©   (31.05.05 16:03) [11


С Delphi 6 midas входит в комплект как MidasLib.dcu. Это в Delphi 3 надо было лицензию


 
sniknik ©   (2005-05-31 16:10) [13]

если на midas грешиш то исправь ошибки в нем... (да, и на солнце есть пятна ;о)))

потом, слышал что у него есть проблемы при работе на 2х процессорном компе (сервере), не знаю исправляеться это или нет... не сталкивался.


 
sniknik ©   (2005-05-31 16:10) [14]

нда.
http://www.distribucon.com/midasbug/


 
galexis ©   (2005-05-31 16:38) [15]


> sniknik ©   (31.05.05 16:10) [13]
Я так думаю и гипертрейдинг она не любит. Спасибо за ссылку.


 
galexis ©   (2005-05-31 16:59) [16]


> sniknik ©   (31.05.05 16:10) [14]

Спасибо огромное! Скачал midas.dll (версии 9) от Delphi 2005. Тьфу, тьфу, тьфу, тук, тук, тук! Два раза испытал. Все работает!
Заодно много нового узнал. Ссылка чудо. Спасибо.


 
galexis ©   (2005-05-31 17:03) [17]

Теперь (с новым midas) можно попробовать избавиться от одного клиентдатасета, наверное тоже глюк старого midas ограниченность по вложенным датасетам.


 
Rule ©   (2005-05-31 17:14) [18]

sniknik ©   (31.05.05 16:10) [13]
он то идет в комлпект поставки, вот только платить надо за каждого клиента отельную плату, и ка каждый сервер, который испльзует мидас ... почитай .... поищи ссылки, мне лень искать, но сталкивался с этим


 
galexis ©   (2005-05-31 17:20) [19]


> Rule ©   (31.05.05 17:14) [18]
Мне Midas нужен только для загрузки данных из XML файла. Я не создаю тонких клиентов и серверов-приложений. Грузится и ладненько.


 
Rule ©   (2005-05-31 17:54) [20]

galexis ©   (31.05.05 17:20) [19]
ну в этом случае я думаю не надо, хотя это надо у борландов спрашивать ....



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

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

Наверх




Память: 0.52 MB
Время: 0.057 c
1-1119610687
webpauk
2005-06-24 14:58
2005.07.11
Pagecontrol add Tab


5-1089110289
ssk
2004-07-06 14:38
2005.07.11
Наследник от TShape со встроенным таймером


1-1118822202
Sparrow
2005-06-15 11:56
2005.07.11
Large Fonts. Ползут контролы а формы-овнеры не ресайзятся


3-1117358511
Nikitian
2005-05-29 13:21
2005.07.11
Проблемы со шрифтами в Tquery vs TQreport


1-1118521788
leonidus
2005-06-12 00:29
2005.07.11
Программа не дает выключить комп