Я читаю и записываю файлы структурированного хранения с C#. Чтобы открыть файл, я звоню IStorage StorageInterface;
int result = StgOpenStorage(filename, null, STGM.READWRITE | STGM.SHARE_EXCLUSIVE,
Я пытался изо всех сил выяснить, почему StgOpenStorageEx возвращает STG_E_FILEALREADYEXISTS в составном документе при открытии его для чтения. Это не имело смысла. Файл был там, и я не пытался ничего