Método ITextStoreACP::RequestLock (textstor.h)
O método ITextStoreACP::RequestLock é chamado pelo gerente do TSF para fornecer um bloqueio de documento para modificar o documento. Esse método chama o método ITextStoreACPSink::OnLockGranted para criar o bloqueio de documento.
Sintaxe
HRESULT RequestLock(
[in] DWORD dwLockFlags,
[out] HRESULT *phrSession
);
Parâmetros
[in] dwLockFlags
Especifica o tipo de bloqueio solicitado.
[out] phrSession
Se a solicitação de bloqueio for síncrona, receberá um valor HRESULT do método ITextStoreAnchorSink::OnLockGranted que especifica o resultado da solicitação de bloqueio.
Se a solicitação de bloqueio for assíncrona e o resultado for TS_S_ASYNC, o documento receberá um bloqueio assíncrono. Se a solicitação de bloqueio for assíncrona e o resultado for TS_E_SYNCHRONOUS, o documento não poderá ser bloqueado de forma síncrona.
Retornar valor
Esse método pode retornar um desses valores.
Valor | Descrição |
---|---|
|
O método foi bem-sucedido. |
|
Ocorreu um erro não especificado. |
Comentários
Esse método usa o método ITextStoreACPSink::OnLockGranted para bloquear o documento. Os aplicativos nunca devem modificar o documento ou enviar notificações de alteração usando o método ITextStoreACPSink::OnTextChange de dentro do método ITextStoreACP::RequestLock . Se o aplicativo tiver alterações pendentes no relatório, o aplicativo só poderá responder à solicitação de bloqueio assíncrona.
Os aplicativos não devem tentar enfileirar várias chamadas de método ITextStoreACP::RequestLock , pois o aplicativo requer apenas um único retorno de chamada. Se o chamador fizer várias solicitações de leitura e uma ou mais solicitações de gravação, no entanto, o retorno de chamada deverá ser para acesso de gravação.
Solicitações bem-sucedidas para bloqueios síncronos substituem solicitações de bloqueios assíncronos. Solicitações malsucedidas para bloqueios síncronos não substituem solicitações de bloqueios assíncronos. A implementação ainda deve atender à solicitação assíncrona pendente, se houver uma.
Se o bloqueio for concedido antes que o método ITextStoreACP::RequestLock retorne, o parâmetro phrSession receberá o HRESULT retornado pelo método ITextStoreACPSink::OnLockGranted . Se a chamada for bem-sucedida, mas o bloqueio for concedido posteriormente, o parâmetro phrSession receberá o sinalizador TS_S_ASYNC. O parâmetro phrSession deve ser ignorado se ITextStoreACP::RequestLock retornar algo diferente de S_OK.
Um chamador nunca deve chamar esse método novamente, exceto no caso de o chamador conter um bloqueio somente leitura. Nesse caso, o método pode ser chamado reentradamente para solicitar um bloqueio de gravação assíncrono. O bloqueio de gravação será concedido posteriormente, depois que o bloqueio somente leitura terminar.
Para obter mais informações sobre bloqueios de documentos, consulte Bloqueios de documentos.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | textstor.h |
DLL | Msctf.dll |
Redistribuível | TSF 1.0 no Windows 2000 Professional |