Share via


Função DdeEnableCallback (ddeml.h)

Habilita ou desabilita transações para uma conversa específica ou para todas as conversas atualmente estabelecidas pelo aplicativo de chamada.

Sintaxe

BOOL DdeEnableCallback(
  [in] DWORD idInst,
  [in] HCONV hConv,
  [in] UINT  wCmd
);

Parâmetros

[in] idInst

Tipo: DWORD

O identificador de instância de aplicativo obtido por uma chamada anterior para a função DdeInitialize .

[in] hConv

Tipo: HCONV

Um identificador para a conversa para habilitar ou desabilitar. Se esse parâmetro for NULL, a função afetará todas as conversas.

[in] wCmd

Tipo: UINT

O código da função. Esse parâmetro pode usar um dos valores a seguir.

Valor Significado
EC_ENABLEALL
0
Habilita todas as transações para a conversa especificada.
EC_ENABLEONE
0x0080
Habilita uma transação para a conversa especificada.
EC_DISABLE
0x0008
Desabilita todas as transações bloqueáveis para a conversa especificada.

Um aplicativo de servidor pode desabilitar as seguintes transações:

Um aplicativo cliente pode desabilitar as seguintes transações:
EC_QUERYWAITING
2
Determina se alguma transação está na fila para a conversa especificada.

Valor retornado

Tipo: BOOL

Se a função for bem-sucedida, o valor retornado será diferente de zero.

Se a função falhar, o valor retornado será zero.

Se o parâmetro wCmd for EC_QUERYWAITING e a fila de transações do aplicativo contiver uma ou mais transações não processadas que não estão sendo processadas, o valor retornado será TRUE; caso contrário, será FALSE.

A função DdeGetLastError pode ser usada para obter o código de erro, que pode ser um dos seguintes valores:

Comentários

Um aplicativo pode desabilitar transações para uma conversa específica retornando o código de retorno CBR_BLOCK de sua função de retorno de chamada DDE (Troca Dinâmica de Dados). Quando você reabilita a conversa usando a função DdeEnableCallback , o sistema operacional gera a mesma transação que estava em processo quando a conversa foi desabilitada.

O uso do sinalizador EC_QUERYWAITING não altera o estado de habilitação da conversa e não faz com que as transações sejam emitidas no contexto da chamada para DdeEnableCallback.

Se DdeEnableCallback for chamado com EC_QUERYWAITING e a função retornar um diferente de zero, um aplicativo deverá tentar permitir rapidamente o processamento de mensagens, retornar de seu retorno de chamada ou habilitar retornos de chamada. Esse resultado não garante que os retornos de chamada subsequentes serão feitos. Chamar DdeEnableCallback com EC_QUERYWAITING permite que um aplicativo com retornos de chamada bloqueados determine se há transações pendentes na conversa bloqueada. É claro que, mesmo que essa chamada retorne zero, um aplicativo sempre deve processar mensagens em tempo hábil.

Requisitos

   
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 ddeml.h (inclua Windows.h)
Biblioteca User32.lib
DLL User32.dll

Confira também

Conceitual

DdeConnect

DdeConnectList

DdeDisconnect

DdeInitialize

Biblioteca de Gerenciamento de Troca dinâmica de dados

Referência