Отправляет email-рассылки с помощью сервиса Sendsay

1С и электронная коммерция

  Все выпуски  

1С и электронная коммерция Доступ к данным V7 из других систем. Работа с Compound-файла




1С и электронная коммерция    Рассылка сайта Системная интеграция + 1С

Сегодня, Четверг, 10 Июля 2008 года (27 Июня 2008 по ст.ст.)
Седмица 4-я по Пятидесятнице, Глас вторый


Петров пост. Прп. Сампсона странноприимца (ок. 530). Прав. Иоанны мироносицы (I). Прп. Серапиона Кожеезерского (1611). Прп. Севира пресвитера (VI). Прп. Георгия Иверского, Святогорца (1065) (Груз.). Прп. Мартина Туровского (после 1146). Новомч. пресв. Григория Никольского (1918). Мч. Анекта Кесарийского. Сщмч. Пиерия, пресв. Антиохийского (Греч.).

Доступ к данным V7 из других систем. Работа с Compound-файлами.

Compaund-файл представляет из себя хранилище OLE-документов, что-то вроде архива. Он состоит из корневого storage – файла, который может содержать другие storage и stream'ы – объекты (по русски, соответственно, папки и файлы). В MFC Compaund-файлы поддерживаются классами COleStreamFile и ColeDocument.

В качестве места складирования данных Compaund-файлы используются в основном в поделках Микрософта – Excel, Word, Power Point. Видимо, чтобы не отстать от лидера софтостроения, отечественные девелоперы из незабвенной фирмы 1С для своего бухгалтерского детища избрали такой же способ хранения информации.

Compaund-файл включает в себя три составляющие – stream-объекты, storage-объекты и ILockBytes-объекты. Как я уже упоминал, storage – это директории, хранящие в своих недрах stream'ы. LockBytes – это некая прослойка между storage и физической файловой системой.

Итак, получим доступ к содержимому Compaund'а на примере некоего файла с загадочным расширением md. Для этого воспользуемся функцией StgOpenStorage – функцией открытия корневого storage. Внутренние storage можно открыть, используя родительский метод Istorage::OpenStorage.

Формат:

    WINOLEAPI StgOpenStorage(
    const WCHAR *pwcsName,
    IStorage *pstgPriority,
    DWORD grfMode,
    SNB snbExclude,
    DWORD reserved,
    IStorage **ppstgOpen
    );
Параметры:
  • pwcsName – Указатель на файл, содержащий storage. Параметр игнорируется, если pStgPriority не NULL.
  • pstgPriority – Обычно NULL. Используется для повторного открытия при наличии интерфейса Istorage.
  • grfMode – Режим доступа к storage.
  • snbExclude – Обычно NULL, но может использоваться для исключения объектов из хранилища.
  • reserved – Для возможного использования в будущем. Пока – ноль.
  • ppstgOpen – Интерфейс IStorage, который возвращается при удачном вызове.

Архив рассылки по адресу: www.anobis.ru
Пишите нам: osbekar@mail.ru
ICQ: 340597008

Подпишитесь на другие наши рассылки

Рассылки Subscribe.Ru
Секреты рекламы и создания интернет-магазинов
Скидки, подарки, призы...
1С и электронная коммерция
Серверы, сетевое оборудование, тесты, характеристики, советы
Рукопашный бой для девушек – выживание, психология, самозащита!
Милосердие. Чем ты можешь помочь ближнему.
Православные знакомства.
Здоровый образ жизни.

В избранное