Condividi tramite


Funzione SetConvertStg (ole2.h)

La funzione SetConvertStg imposta il bit di conversione in un oggetto di archiviazione per indicare che l'oggetto deve essere convertito in una nuova classe quando viene aperto. L'impostazione può essere recuperata con una chiamata alla funzione GetConvertStg .

Sintassi

HRESULT SetConvertStg(
  LPSTORAGE pStg,
  BOOL      fConvert
);

Parametri

pStg

Puntatore IStorage all'oggetto di archiviazione in cui impostare il bit di conversione.

fConvert

Se TRUE, imposta il bit di conversione per l'oggetto per indicare che l'oggetto deve essere convertito all'apertura. Se FALSE, cancella il bit di conversione.

Valore restituito

Vedere i metodi IStorage::CreateStream, IStorage::OpenStream, ISequentialStream::Read e ISequentialStream::Write per individuare possibili errori di archiviazione e accesso al flusso.

Commenti

La funzione SetConvertStg determina lo stato del bit di conversione in un oggetto contenuto. Viene chiamato dall'applicazione contenitore e dal server nel processo di conversione di un oggetto da una classe a un'altra. Quando un utente specifica tramite una finestra di dialogo Converti in (che il contenitore produce con una chiamata alla funzione OleUIConvert ) che un oggetto deve essere convertito, il contenitore deve eseguire i passaggi seguenti:

  1. Scaricare l'oggetto se è attualmente caricato.
  2. Chiamare WriteClassStg per scrivere il nuovo CLSID nell'archivio oggetti.
  3. Chiamare WriteFmtUserTypeStg per scrivere il nuovo nome di tipo utente e il formato principale esistente nella risorsa di archiviazione.
  4. Chiamare SetConvertStg con il parametro fConvert impostato su TRUE per indicare che l'oggetto è stato contrassegnato per la conversione in una nuova classe alla successiva caricamento.
  5. Subito prima del caricamento dell'oggetto, chiama OleDoAutoConvert per gestire qualsiasi conversione di oggetti necessaria, a meno che non chiami OleLoad, che lo chiama internamente.
Quando un oggetto viene inizializzato da un oggetto di archiviazione e il server è la destinazione di un'operazione di conversione in, il server oggetti deve eseguire le operazioni seguenti:
  1. Chiamare la funzione GetConvertStg per recuperare il valore del bit di conversione.
  2. Se il bit è impostato, il server legge i dati dall'oggetto in base al formato associato al nuovo CLSID.
  3. Quando all'oggetto viene richiesto di salvare se stesso, l'oggetto deve chiamare la funzione WriteFmtUserTypeStg usando il normale formato nativo e il tipo di utente dell'oggetto.
  4. L'oggetto deve quindi chiamare SetConvertStg con il parametro fConvert impostato su FALSE per reimpostare il bit di conversione dell'oggetto.

Requisiti

Requisito Valore
Client minimo supportato Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione ole2.h
Libreria Ole32.lib
DLL Ole32.dll

Vedi anche

GetConvertStg