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

Вниз

Как конвертнуть бинарный *.dmf в текстовый формат?   Найти похожие ветки 

 
int64   (2003-12-22 13:08) [0]

Нужно конвертнуть *.dmf файл из бинарника в тект или какой другой формат с сохранением иерархии для наглядного отображения. Как мы это видим в редакторе D5.

Интересуют какие-нибудь готовые "парсеры" в сорсах, или если это можно вызывать функциями из библиотек D5, вообще будет замечательно.


 
Reindeer Moss Eater ©   (2003-12-22 13:09) [1]

....Delphi5\Bin\Convert.exe + *.dfm


 
Юрий Зотов ©   (2003-12-22 13:10) [2]

Еще ObjectBinaryToText.


 
int64   (2003-12-22 13:13) [3]

Сенкс. Иду проверять.


 
int64   (2003-12-23 12:43) [4]

Не работает функция. Вернее данные из *.dmf преобразует, только стрим получается глючный.
Вот как делаю:

procedure TForm1.Button2Click(Sender: TObject);
var
Stream: TStream;
StrStream: TStringStream;
s: string;
begin
Stream:= TFileStream.Create("...Unit1.dfm", fmOpenRead or fmShareDenyWrite);
// Stream:= TMemoryStream.Create;
// Stream.WriteComponent(Form1);

StrStream := TStringStream.Create("");
Stream.Seek(0, soFromBeginning);
ObjectBinaryToText(Stream, StrStream);
StrStream.Seek(0, soFromBeginning );{<- здесь ошибка
Invalid sream format}

s:= StrStream.DataString;

StrStream.Free;
Stream.Free;
Memo1.Lines.Add(s)
end;

Если вместо
Stream:= TFileStream.Create("...Unit1.dfm", fmOpenRead or fmShareDenyWrite);

Написать
Stream:= TMemoryStream.Create;
Stream.WriteComponent(Form1);
То все работает.


 
int64   (2003-12-23 14:09) [5]

Вопрос не закрыт.
Реально ли сделать сабж, не поставляя с программой Convert.exe.


 
Reindeer Moss Eater ©   (2003-12-23 14:17) [6]

Ты с программой DFM поставляешь?
Зачем?
А что полезного происходит когда поставляемые (зачем-то) с программой DFM превращаются в текстовые файлы?


 
int64   (2003-12-23 14:33) [7]

Dmf-ы в бинарниках лежат на сервере БД. Через них реализован интерфейс клиентского ПО. Теперь чтобы реализовать некотрые механизмы (в частности, наследование или редактирование) их надо гонять в разные форматы.
И совсем не хочется временных файлов.


 
Reindeer Moss Eater ©   (2003-12-23 14:48) [8]

Пользователи занимаются развитием интерфейса программы наследуясь от разработанных разработчиком классов?

Думаю что нет.

Остается только это:
Разработчики придумали эту фичу для себя, что бы облегчить себе труд по сопровождению и развитию продукта. А получилось наоборот. Тривиальная задача порождения потомка сопряжена с дополнительными услилиями.


 
REA ©   (2003-12-23 15:03) [9]

Можно я объясню, одно из применений?:

>Ты с программой DFM поставляешь? Зачем?

Можно описать наборы компонент со свойствами заранее. Их так удобнее сохранять и грузить.

>А что полезного происходит когда поставляемые (зачем-то) с
>программой DFM превращаются в текстовые файлы?

При модификации программы легким движением руки их можно подправить в текстовом редакторе, если юзеру очень нужно то, что он там сам насоздавал.


 
Reindeer Moss Eater ©   (2003-12-23 15:07) [10]

Можно я объясню, одно из применений?:

Применение этого мне не надо объяснять.

При модификации программы легким движением руки их можно подправить в текстовом редакторе, если юзеру очень нужно то, что он там сам насоздавал.

Откуда тогда вопрос, если все так удобно?



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

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

Наверх




Память: 0.49 MB
Время: 0.026 c
3-25219
Бармаглот
2003-12-11 14:04
2004.01.09
Можно ли с помощью ADO делать клиент-серверну БД?


1-25394
npAKTuk
2003-12-24 20:41
2004.01.09
Проблема в работе с файлами


7-25621
maxon
2003-10-22 09:50
2004.01.09
Диспетчер задач


14-25520
SiJack
2003-12-17 16:15
2004.01.09
Какой струйный принтер посоветуете ?


3-25186
yaJohn
2003-12-12 17:49
2004.01.09
Paradox, index - kaput, kak izvlech dannie?