Funzione OleFlushClipboard (ole2.h)
Esegue la sequenza di arresto degli Appunti. Rilascia anche il puntatore IDataObject posizionato negli Appunti dalla funzione OleSetClipboard .
Sintassi
HRESULT OleFlushClipboard();
Valore restituito
Questa funzione restituisce S_OK in caso di esito positivo. Altri valori possibili includono quanto segue.
Codice restituito | Descrizione |
---|---|
|
La funzione Windows OpenClipboard utilizzata in OleFlushClipboard non è riuscita. |
|
La funzione CloseClipboard di Windows utilizzata in OleFlushClipboard non è riuscita. |
Commenti
OleFlushClipboard esegue il rendering dei dati da un oggetto dati negli Appunti e rilascia il puntatore IDataObject all'oggetto dati. Mentre l'applicazione che inserisce l'oggetto dati negli Appunti è in esecuzione, gli Appunti contengono solo un puntatore all'oggetto dati, salvando così la memoria. Se si scrive un'applicazione che funge da origine di un'operazione degli Appunti, è possibile chiamare la funzione OleFlushClipboard quando l'applicazione viene chiusa, ad esempio quando l'utente esce dall'applicazione. La chiamata a OleFlushClipboard consente di incollare e incollare oggetti OLE dopo l'arresto dell'applicazione.
Prima di chiamare OleFlushClipboard, è possibile determinare facilmente se i dati sono ancora presenti negli Appunti con una chiamata alla funzione OleIsCurrentClipboard .
OleFlushClipboard lascia tutti i formati offerti dall'oggetto trasferimento dati, inclusi i formati di compatibilità OLE 1, negli Appunti in modo che siano disponibili dopo l'arresto dell'applicazione. Oltre ai formati di compatibilità OLE 1, questi includono tutti i formati offerti su un supporto di handle globale (tutti tranne TYMED_FILE) e formattati con un dispositivo di destinazione NULL . Ad esempio, se un'applicazione di origine dati offre un formato specifico degli Appunti (ad esempio cfFOO) in un oggetto IStorage e chiama la funzione OleFlushClipboard , l'oggetto di archiviazione viene copiato in memoria e l'handle di memoria hglobal viene inserito negli Appunti.
Per recuperare le informazioni negli Appunti, è possibile chiamare la funzione OleGetClipboard da un'altra applicazione, che crea un oggetto dati predefinito e l'oggetto hglobal dagli Appunti diventa di nuovo un oggetto di archiviazione. Inoltre, l'enumeratore FORMATETC e il metodo IDataObject::QueryGetData indicano tutti correttamente che il formato originale degli Appunti (cfFOO) è nuovamente disponibile in un TYMED_ISTORAGE.
Per svuotare gli Appunti, chiamare la funzione OleSetClipboard specificando un valore NULL per il relativo parametro. L'applicazione deve chiamare questa operazione quando si chiude se non è necessario lasciare i dati negli Appunti dopo l'arresto o se i dati verranno inseriti negli Appunti usando le funzioni standard degli Appunti di Windows.
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 |
Set di API | ext-ms-win-com-ole32-l1-1-5 (introdotto in Windows 10, versione 10.0.15063) |