Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Компоненты Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.10.2013, 20:44   #1
furstenberg
Форумчанин
 
Регистрация: 08.10.2007
Сообщений: 125
По умолчанию использование TXmlDocument в своем классе

Здравствуйте. Создаю форму на on create кидаю:
Код:
var
XmlDocument:TXmlDocument;
lNode:IXMLNode;
begin
XmlDocument:=TXmlDocument.Create(nil);
XmlDocument.LoadFromFile('e:\temp\1.xml');
lNode:=XmlDocument.DocumentElement;


end;
все работает. Создаю свой класс по работе с xml, добавляю в uses Xml.xmldom,Xml.XMLIntf,Xml.Win.msxm ldom,Xml.XMLDoc;. Код тот же самый:
Код:
XmlDocument:=TXmlDocument.Create(nil);
XmlDocument.LoadFromFile('e:\temp\1.xml');
lNode:=XmlDocument.DocumentElement;//здесь ошибка
Не может загрузить файл похоже.
Почему так происходит?
furstenberg вне форума Ответить с цитированием
Старый 12.10.2013, 20:58   #2
Кольша
Далеко не
Участник клуба
 
Аватар для Кольша
 
Регистрация: 11.08.2011
Сообщений: 1,512
По умолчанию

Больше кода..еще больше..
А так можно еще в try except запихать и смотреть последние ошибки.
Кольша вне форума Ответить с цитированием
Старый 12.10.2013, 21:11   #3
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

вообще то TXmlDocument.Create(nil); всегда возвращает ссылку на интерфейс, подозреваю что когда добавили в юзес, то гдето что-то не срастается
да и ошибку бы показать не мешалобы
eval вне форума Ответить с цитированием
Старый 13.10.2013, 00:59   #4
Vapaamies
Ваш К. О.
Участник клуба
 
Аватар для Vapaamies
 
Регистрация: 26.12.2012
Сообщений: 1,775
По умолчанию

Документ тоже должен быть интерфейсом:
Код:
var
  XmlDocument: IXmlDocument;
Vapaamies вне форума Ответить с цитированием
Старый 14.10.2013, 12:08   #5
furstenberg
Форумчанин
 
Регистрация: 08.10.2007
Сообщений: 125
По умолчанию

Ошибка Invalid Pointer Operation. В общем я тут потыкался и получается вот что : если создаешь обычный проект , то код
Код:
var
XmlDocument:TXmlDocument;
lNode:IXMLNode;
begin
XmlDocument:=TXmlDocument.Create(nil);
XmlDocument.LoadFromFile('e:\temp\1.xml');
lNode:=XmlDocument.DocumentElement;


end;
работает нормально, а если проект FireMonkey с тем же кодом, то ошибка
Код:
lNode:=XmlDocument.DocumentElement;
. Ничего не понимаю.
furstenberg вне форума Ответить с цитированием
Старый 14.10.2013, 12:40   #6
furstenberg
Форумчанин
 
Регистрация: 08.10.2007
Сообщений: 125
По умолчанию

+ Создал класс с вышеприведённым кодом. Использую его из обычного проекта- все работает. Из FMX Ошибка Invalid Pointer Operation.
furstenberg вне форума Ответить с цитированием
Старый 14.10.2013, 12:42   #7
eval
Подтвердите свой е-майл
 
Регистрация: 29.08.2012
Сообщений: 4,011
По умолчанию

Цитата:
Ничего не понимаю.
для начала неплохо бы научиться читать, хотябы посты с ответами
eval вне форума Ответить с цитированием
Старый 14.10.2013, 15:39   #8
furstenberg
Форумчанин
 
Регистрация: 08.10.2007
Сообщений: 125
По умолчанию

Да, действительно невнимательно прочитал ответы. Всем большое спасибо.Всё заработало.
furstenberg вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
реализация виртуальных функций не в своем классе pproger Общие вопросы C/C++ 2 08.12.2010 00:35
как создать динамический массив в своем классе? like_cloud Общие вопросы Delphi 6 24.11.2010 09:13
TCaption в своем классе ZotaC Gamedev - cоздание игр: Unity, OpenGL, DirectX 6 26.05.2010 19:21
Использование MediaPlayer в своем классе. Вадим Буренков Мультимедиа в Delphi 5 03.04.2009 17:16
использование php5ts.dll в своем приложении Dj_smart PHP 10 07.12.2008 15:17