Metodo ITextStoreAnchor::RequestLock (textstor.h)
Usato dal gestore TSF per fornire un blocco del documento per modificare il flusso di testo.
Sintassi
HRESULT RequestLock(
[in] DWORD dwLockFlags,
[out] HRESULT *phrSession
);
Parametri
[in] dwLockFlags
Specifica il tipo di blocco richiesto.
[out] phrSession
Se la richiesta di blocco è sincrona, riceve un valore HRESULT dal metodo ITextStoreAnchorSink::OnLockGranted che specifica il risultato della richiesta di blocco.
Se la richiesta di blocco è asincrona e il risultato è TS_S_ASYNC, il documento riceve un blocco asincrono. Se la richiesta di blocco è asincrona e il risultato è TS_E_SYNCHRONOUS, il documento non può essere bloccato in modo sincrono.
Valore restituito
Questo metodo può restituire uno di questi valori.
Valore | Descrizione |
---|---|
|
Il metodo è stato eseguito correttamente. |
|
Si è verificato un errore non specificato. |
Commenti
Questo metodo usa il metodo ITextStoreAnchorSink::OnLockGranted per bloccare il documento. Le applicazioni non devono mai modificare il documento o inviare notifiche di modifica usando il metodo ITextStoreAnchorSink::OnTextChange dall'interno del metodo ITextStoreAnchor::RequestLock . Se l'applicazione ha modifiche in sospeso al report, l'applicazione può rispondere solo alla richiesta di blocco asincrona.
Le applicazioni non devono tentare di accodare più chiamate al metodo ITextStoreAnchor::RequestLock , perché l'applicazione richiede solo un singolo callback. Se il chiamante effettua diverse richieste di lettura e una o più richieste di scrittura, tuttavia, il callback deve essere per l'accesso in scrittura.
Le richieste di esito positivo per i blocchi sincrono sostituiscono le richieste per i blocchi asincroni. Le richieste non riuscite per i blocchi sincroni non sostituiscono le richieste per i blocchi asincroni. L'implementazione deve comunque servire la richiesta asincrona in sospeso, se presente.
Se il blocco viene concesso prima che il metodo ITextStoreAnchor::RequestLock restituisca, il parametro phrSession riceverà il valore HRESULT restituito dal metodo ITextStoreAnchorSink::OnLockGranted . Se la chiamata ha esito positivo, ma il blocco verrà concesso in un secondo momento, il parametro phrSession riceve il flag di TS_S_ASYNC. Il parametro phrSession deve essere ignorato se ITextStoreAnchor::RequestLock restituisce qualsiasi elemento diverso da S_OK.
Un chiamante non deve mai chiamare questo metodo in modo reentrantly, tranne nel caso in cui il chiamante contenga un blocco di sola lettura. In questo caso, il metodo può essere chiamato reentrantly per chiedere un blocco di scrittura asincrono. Il blocco di scrittura verrà concesso in un secondo momento, dopo la fine del blocco di sola lettura.
Per altre informazioni sui blocchi dei documenti, vedere Blocchi documenti.
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 | textstor.h |
DLL | Msctf.dll |
Componente ridistribuibile | TSF 1.0 in Windows 2000 Professional |