Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 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.045 c
1-1107968525
alexa
2005-02-09 20:02
2005.02.27
Цвет в Panel


11-1092130053
nester
2004-08-10 13:27
2005.02.27
2Kladov. Можно ли в следующей версии KOL добавить valseparator?


14-1107844205
AlexG
2005-02-08 09:30
2005.02.27
Это что такое?


9-1101119796
mefisto
2004-11-22 13:36
2005.02.27
Карта 2000 x 2000 с помощью DelphiX


14-1107199023
Alexander Panov
2005-01-31 22:17
2005.02.27
Каких вы взглядов придерживаетесь?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский