Проблема ClientDataSet
Делаю:
TMemoryStream *a = new TMemoryStream ();
....
ClientDataSet1->LoadFromStream(a);
delete a;
Вылетает ошибка:
Missing data provider or data packet
в чем проблема?
P.S. ClientDataSet1->LoadFromFile рабоатет замечательно:)
Так что если ошибка "Missing data provider or data packet", то или XML глючит, либо при записи потока косяк произошёл.
Цитата:
Originally posted by fellow
В справке по TClientDataSet::LoadFromStream написано, что поток должен содержать данные во внутреннем формате датасета, например, записанные туда методом SaveToStream другого датасета. А SaveToSream, в свою очередь, может работать как с двоичным форматом пакетов данных, так и с XML-форматом.
Так что если ошибка "Missing data provider or data packet", то или XML глючит, либо при записи потока косяк произошёл.
В справке по TClientDataSet::LoadFromStream написано, что поток должен содержать данные во внутреннем формате датасета, например, записанные туда методом SaveToStream другого датасета. А SaveToSream, в свою очередь, может работать как с двоичным форматом пакетов данных, так и с XML-форматом.
Так что если ошибка "Missing data provider or data packet", то или XML глючит, либо при записи потока косяк произошёл.
возможно... НО, я пошел дальше...
создал ClientDataSet1, туда загрузил какие то данные, потом:
TMemoryStream *st = new TMemoryStream ();
ClientDataSet1->SaveToStream(st);
ClientDataSet2->LoadFromStream(st);
delete st;
эффект тот же :{
Цитата:
Originally posted by Sergun
возможно... НО, я пошел дальше...
создал ClientDataSet1, туда загрузил какие то данные, потом:
TMemoryStream *st = new TMemoryStream ();
ClientDataSet1->SaveToStream(st);
ClientDataSet2->LoadFromStream(st);
delete st;
эффект тот же :{
возможно... НО, я пошел дальше...
создал ClientDataSet1, туда загрузил какие то данные, потом:
TMemoryStream *st = new TMemoryStream ();
ClientDataSet1->SaveToStream(st);
ClientDataSet2->LoadFromStream(st);
delete st;
эффект тот же :{
ClientDataSet1->SaveToStream(st) - это хорошо, а спецификация формата какая?
ClientDataSet1->SaveToStream(st,dfXML) - например.
Цитата:
Originally posted by fellow
ClientDataSet1->SaveToStream(st) - это хорошо, а спецификация формата какая?
ClientDataSet1->SaveToStream(st,dfXML) - например.
ClientDataSet1->SaveToStream(st) - это хорошо, а спецификация формата какая?
ClientDataSet1->SaveToStream(st,dfXML) - например.
точно в десятку, только мы еще забыли про позицию, но сейчас вроде разгребли ...Спасиб:)