Главная страница
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.017 c
14-25554
Тимохов
2003-12-18 17:31
2004.01.09
Chess


14-25508
Йорген фон Швах
2003-12-16 09:01
2004.01.09
Скоро скоро Новый год!


14-25592
Юрий Федоров
2003-12-17 17:26
2004.01.09
Спам


1-25372
-=DeMoH=-
2003-12-23 15:12
2004.01.09
Кто знаком с мат.статистикой?


4-25636
Fox Mulder
2003-11-07 06:31
2004.01.09
Скины