Форум: "Основная";
Текущий архив: 2005.02.27;
Скачать: [xml.tar.bz2];
ВнизКак работать с Compound Document (он же OLE Structured Storage). Найти похожие ветки
← →
_student (2005-02-08 18:52) [0]Может ктонить знает как с ними работать. Еще лучще компонент для работы с ними. Заранее спасибо.
← →
_student (2005-02-08 19:11) [1]В таком файле хранится например конфигурация 1С
← →
Misha Uskov © (2005-02-08 19:30) [2]Вот я глобальный модуль 1С получаю
function TInserterMDForm.GetProgramText(FileName: string): TStringList;
var
RootStg, TextStg, Stg1 : IStorage;
Hr: HResult;
TextStream: IStream;
StringStream: TStringStream;
OS: TOLEStream;
begin
Result:=TStringList.create;
Hr := StgOpenStorage(StringToOleStr(FileName),
nil, STGM_READ or STGM_DIRECT
or STGM_SHARE_EXCLUSIVE,
nil, 0, RootStg);
OLECheck(Hr);
OleCheck(RootStg.OpenStorage(StringToOleStr("TypedText"), nil,
STGM_READ or STGM_SHARE_EXCLUSIVE, nil, 0, TextStg));
OleCheck(TextStg.OpenStorage(StringToOleStr("ModuleText_Number1"), nil,
STGM_READ or STGM_SHARE_EXCLUSIVE, nil, 0, Stg1));
Hr := Stg1.OpenStream(StringToOleStr("MD Programm text"), nil, STGM_DIRECT
or STGM_READ or STGM_SHARE_EXCLUSIVE, 0, TextStream);
OLECheck(Hr);
RootStg.Commit(S_OK);
StringStream:=TStringStream.Create("");
try
OS := TOleStream.Create(TextStream);
try
try
OS.Position:=0;
ZDecompressStream(OS, StringStream);
finally
OS.Free;
end;
Result.Text:=StringStream.DataString;
except
end;
finally
StringStream.Free;
end;
end;
← →
_student (2005-02-11 11:02) [3]Спасибо. Посмотрю.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2005.02.27;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.038 c