Interfaccia IStorage (objidl.h)
L'interfaccia IStorage supporta la creazione e la gestione di oggetti di archiviazione strutturati. L'archiviazione strutturata consente l'archiviazione gerarchica delle informazioni all'interno di un singolo file e viene spesso definita "file system all'interno di un file". Gli elementi di un oggetto di archiviazione strutturato sono archivi e flussi. Le risorse di archiviazione sono analoghe alle directory e i flussi sono analoghi ai file. All'interno di una risorsa di archiviazione strutturata sarà presente un oggetto di archiviazione primario che può contenere sottostorage, possibilmente annidati e flussi. Le risorse di archiviazione forniscono la struttura dell'oggetto e i flussi contengono i dati, che vengono modificati tramite l'interfaccia IStream .
L'interfaccia IStorage fornisce metodi per creare e gestire l'oggetto di archiviazione radice, gli oggetti di archiviazione figlio e gli oggetti flusso. Questi metodi possono creare, aprire, enumerare, spostare, copiare, rinominare o eliminare gli elementi nell'oggetto di archiviazione.
Un'applicazione deve rilasciare i puntatori IStorage quando viene eseguita con l'oggetto di archiviazione per deallocare la memoria usata. Esistono anche metodi per modificare la data e l'ora di un elemento.
Esistono diverse modalità in cui è possibile aprire un oggetto di archiviazione e i relativi elementi, determinando i valori delle costanti STGM. Un aspetto di questo è il commit delle modifiche. È possibile impostare la modalità diretta, in cui le modifiche apportate a un oggetto vengono scritte immediatamente o in modalità transazionata, in cui le modifiche vengono scritte in un buffer finché non viene eseguito il commit esplicito. L'interfaccia IStorage fornisce metodi per il commit delle modifiche e il ripristino all'ultima versione di cui è stato eseguito il commit. Ad esempio, un flusso può essere aperto in modalità di sola lettura o in modalità di lettura/scrittura. Per altre informazioni, vedere Costanti STGM.
Altri metodi forniscono l'accesso alle informazioni su un oggetto di archiviazione e sui relativi elementi tramite la struttura STATSTG .
Ereditarietà
L'interfaccia IStorage eredita dall'interfaccia IUnknown . IStorage include anche questi tipi di membri:
Metodi
L'interfaccia IStorage include questi metodi.
IStorage::Commit Il metodo Commit garantisce che tutte le modifiche apportate a un oggetto di archiviazione aperte in modalità transazionali vengano riflesse nella risorsa di archiviazione padre. |
IStorage::CopyTo Copia l'intero contenuto di un oggetto di archiviazione aperto in un altro oggetto di archiviazione. |
IStorage::CreateStorage Crea e apre un nuovo oggetto di archiviazione annidato all'interno di questo oggetto di archiviazione con il nome specificato nella modalità di accesso specificata. |
IStorage::CreateStream Crea e apre un oggetto flusso con il nome specificato contenuto in questo oggetto di archiviazione. |
IStorage::D estroyElement Rimuove l'archiviazione o il flusso specificato da questo oggetto di archiviazione. |
IStorage::EnumElements Il metodo EnumElements recupera un puntatore a un oggetto enumeratore che può essere utilizzato per enumerare gli oggetti di archiviazione e flusso contenuti in questo oggetto di archiviazione. |
IStorage::MoveElementTo Il metodo MoveElementTo copia o sposta un sottostorage o un flusso da questo oggetto di archiviazione a un altro oggetto di archiviazione. |
IStorage::OpenStorage Apre un oggetto di archiviazione esistente con il nome specificato nella modalità di accesso specificata. |
IStorage::OpenStream Apre un oggetto flusso esistente all'interno di questo oggetto di archiviazione nella modalità di accesso specificata. |
IStorage::RenameElement Il metodo RenameElement rinomina la sottostorazione o il flusso specificati in questo oggetto di archiviazione. |
IStorage::Revert Il metodo Revert elimina tutte le modifiche apportate all'oggetto di archiviazione dall'ultima operazione di commit. |
IStorage::SetClass Il metodo SetClass assegna l'identificatore di classe (CLSID) specificato a questo oggetto di archiviazione. |
IStorage::SetElementTimes Il metodo SetElementTimes imposta i tempi di modifica, accesso e creazione dell'elemento di archiviazione specificato, se il file system sottostante supporta questo metodo. |
IStorage::SetStateBits Il metodo SetStateBits archivia fino a 32 bit di informazioni sullo stato in questo oggetto di archiviazione. |
IStorage::Stat Il metodo Stat recupera la struttura STATSTG per questo oggetto di archiviazione aperto. |
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 Professional [app desktop | App UWP] |
Server minimo supportato | Windows 2000 Server [app desktop | App UWP] |
Piattaforma di destinazione | Windows |
Intestazione | objidl.h |