Я должен раскрыть файл MS Word (.doc) и извлечь его составляющие файлы (' [1] CompObj', 'WordDocument' и т.д.). Что-то как с 7 zip может использоваться, чтобы сделать это вручную, но я должен сделать это программно.
Я заключил, что документ Word является контейнером OLE (следовательно, почему с 7 zip может использоваться для просмотра его содержания), но я не могу удаться как к (использующий C++):
Я нашел несколько примеров автоматизации OLE (например, здесь), но что я хочу сделать, кажется, менее распространен, и я не нашел определенных примеров.
Если у кого-либо есть какая-либо идея любого API (?!) и учебное руководство для работы с OLE я был бы благодарен. Так же любые примеры кода.
Он называется составными файлами и является частью API структурированного хранилища. Вы начинаете с StgOpenStorageEx (). Это мало стоит для файла Word .doc, сами потоки имеют сложный двоичный формат. Чтобы действительно прочитал содержимое документа, вы хотите использовать автоматизацию, позволяя Word читать файл. Это редко делается в C ++, но этот проект показывает вам, как это сделать.
Этот сайт http://www.endurasoft.com/vcd/ststo.htm содержит и учебник, и информацию об API, и пример кода, который делает все, что я искал.