Interface IStorage (objidl.h)
A interface IStorage dá suporte à criação e ao gerenciamento de objetos de armazenamento estruturados. O armazenamento estruturado permite o armazenamento hierárquico de informações em um único arquivo e geralmente é chamado de "um sistema de arquivos dentro de um arquivo". Elementos de um objeto de armazenamento estruturado são armazenamentos e fluxos. Os armazenamentos são análogos a diretórios e os fluxos são análogos aos arquivos. Em um armazenamento estruturado, haverá um objeto de armazenamento primário que pode conter sub-armazenamentos, possivelmente aninhados e fluxos. Os armazenamentos fornecem a estrutura do objeto e os fluxos contêm os dados, que são manipulados por meio da interface IStream .
A interface IStorage fornece métodos para criar e gerenciar o objeto de armazenamento raiz, objetos de armazenamento filho e objetos de fluxo. Esses métodos podem criar, abrir, enumerar, mover, copiar, renomear ou excluir os elementos no objeto de armazenamento.
Um aplicativo deve liberar seus ponteiros IStorage quando terminar com o objeto de armazenamento para desalocar a memória usada. Também há métodos para alterar a data e a hora de um elemento.
Há vários modos diferentes em que um objeto de armazenamento e seus elementos podem ser abertos, determinados pela definição de valores de constantes STGM. Um aspecto disso é como as alterações são confirmadas. Você pode definir o modo direto, no qual as alterações em um objeto são gravadas imediatamente nele ou no modo transacionado, no qual as alterações são gravadas em um buffer até serem confirmadas explicitamente. A interface IStorage fornece métodos para confirmar alterações e reverter para a última versão confirmada. Por exemplo, um fluxo pode ser aberto no modo somente leitura ou no modo de leitura/gravação. Para obter mais informações, consulte Constantes STGM.
Outros métodos fornecem acesso a informações sobre um objeto de armazenamento e seus elementos por meio da estrutura STATSTG .
Herança
A interface IStorage herda da interface IUnknown . O IStorage também tem estes tipos de membros:
Métodos
A interface IStorage tem esses métodos.
IStorage::Commit O método Commit garante que todas as alterações feitas em um objeto de armazenamento aberto no modo transacionado sejam refletidas no armazenamento pai. |
IStorage::CopyTo Copia todo o conteúdo de um objeto de armazenamento aberto para outro objeto de armazenamento. |
IStorage::CreateStorage Cria e abre um novo objeto de armazenamento aninhado dentro desse objeto de armazenamento com o nome especificado no modo de acesso especificado. |
IStorage::CreateStream Cria e abre um objeto de fluxo com o nome especificado contido neste objeto de armazenamento. |
IStorage::D estroyElement Remove o armazenamento ou fluxo especificado desse objeto de armazenamento. |
IStorage::EnumElements O método EnumElements recupera um ponteiro para um objeto enumerador que pode ser usado para enumerar os objetos de armazenamento e fluxo contidos nesse objeto de armazenamento. |
IStorage::MoveElementTo O método MoveElementTo copia ou move um subtorage ou fluxo desse objeto de armazenamento para outro objeto de armazenamento. |
IStorage::OpenStorage Abre um objeto de armazenamento existente com o nome especificado no modo de acesso especificado. |
IStorage::OpenStream Abre um objeto de fluxo existente dentro desse objeto de armazenamento no modo de acesso especificado. |
IStorage::RenameElement O método RenameElement renomeia o subtorage ou fluxo especificado neste objeto de armazenamento. |
IStorage::Revert O método Revert descarta todas as alterações feitas no objeto de armazenamento desde a última operação de confirmação. |
IStorage::SetClass O método SetClass atribui o CLSID (identificador de classe) especificado a esse objeto de armazenamento. |
IStorage::SetElementTimes O método SetElementTimes define os tempos de modificação, acesso e criação do elemento de armazenamento especificado, se o sistema de arquivos subjacente der suporte a esse método. |
IStorage::SetStateBits O método SetStateBits armazena até 32 bits de informações de estado neste objeto de armazenamento. |
IStorage::Stat O método Stat recupera a estrutura STATSTG para esse objeto de armazenamento aberto. |
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional [aplicativos da área de trabalho | Aplicativos UWP] |
Servidor mínimo com suporte | Windows 2000 Server [aplicativos da área de trabalho | Aplicativos UWP] |
Plataforma de Destino | Windows |
Cabeçalho | objidl.h |