Metodo IStorage::D estroyElement (objidl.h)

Il metodo DestroyElement rimuove l'archiviazione o il flusso specificato da questo oggetto di archiviazione.

Sintassi

HRESULT DestroyElement(
  [in] const OLECHAR *pwcsName
);

Parametri

[in] pwcsName

Puntatore a una stringa Unicode con terminazione null di caratteri wide contenente il nome dell'archiviazione o del flusso da rimuovere.

Valore restituito

Questo metodo può restituire uno di questi valori.

Codice restituito Descrizione
S_OK L'elemento è stato rimosso correttamente.
E_PENDING Solo archiviazione asincrona: parte o tutti i dati dell'elemento non sono attualmente disponibili.
STG_E_ACCESSDENIED Il chiamante non dispone delle autorizzazioni per rimuovere l'elemento.
STG_E_FILENOTFOUND L'elemento con il nome specificato non esiste.
STG_E_INSUFFICIENTMEMORY L'elemento non è stato rimosso a causa di una mancanza di memoria.
STG_E_INVALIDNAME Valore non valido per pwcsName.
STG_E_INVALIDPOINTER Il puntatore specificato per l'elemento non è valido.
STG_E_INVALIDPARAMETER Uno dei parametri non è valido.
STG_E_REVERTED L'oggetto di archiviazione è stato invalidato da un'operazione di ripristino sopra di essa nell'albero delle transazioni.
STG_E_TOOMANYOPENFILES L'elemento non è stato rimosso perché sono presenti troppi file aperti.

Commenti

Il metodo DestroyElement elimina una sottostorage o un flusso dall'oggetto di archiviazione corrente. Dopo una chiamata riuscita a DestroyElement, qualsiasi istanza aperta dell'elemento eliminato dall'archiviazione padre non è valida.

Se un oggetto di archiviazione viene aperto nella modalità transazionata, la distruzione di un elemento richiede che la chiamata a DestroyElement venga seguita da una chiamata a IStorage::Commit.

Nota Il metodo DestroyElement non compatta il flusso di directory. Contrassegna solo la voce di directory eliminata come non valida. Le voci non valide vengono riutilizzate durante la creazione di una nuova risorsa di archiviazione o di un flusso.

Per i flussi di contenuto, i settori di flusso eliminati sono contrassegnati come gratuiti. Se i settori liberi si trovano alla fine del file, il file di documento deve essere ridotto. Per compattare un file di documento, chiamare IStorage::CopyTo nell'oggetto di archiviazione radice e copiare in un nuovo oggetto di archiviazione.

 

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
Libreria Uuid.lib
DLL Ole32.dll

Vedi anche

IStorage - Implementazione di file composti