Função DdeInitializeA (ddeml.h)
Registra um aplicativo com o DDEML (Biblioteca de Gerenciamento do Exchange de Dados Dinâmicos) do
Sintaxe
UINT DdeInitializeA(
[in, out] LPDWORD pidInst,
[in] PFNCALLBACK pfnCallback,
[in] DWORD afCmd,
DWORD ulRes
);
Parâmetros
[in, out] pidInst
Tipo: LPDWORD
O identificador da instância do aplicativo. Na inicialização, esse parâmetro deve apontar para 0. Se a função for bem-sucedida, esse parâmetro apontará para o identificador de instância do aplicativo. Esse valor deve ser passado como o parâmetro idInst em todas as outras funções DDEML que o exigem. Se um aplicativo usar várias instâncias da DLL (biblioteca de vínculo dinâmico) DDEML, o aplicativo deverá fornecer uma função de retorno de chamada diferente para cada instância.
Se pidInst apontar para um valor diferente de zero, a reinicialização do DDEML estará implícita. Nesse caso, pidInst deve apontar para um identificador de instância de aplicativo válido.
[in] pfnCallback
Tipo: PFNCALLBACK
Um ponteiro para a função de retorno de chamada DDE definida pelo aplicativo. Essa função processa transações DDE enviadas pelo sistema. Para obter mais informações, consulte a função DdeCallback de retorno de chamada.
[in] afCmd
Tipo: DWORD
Um conjunto de sinalizadores APPCMD_, CBF_e MF_. Os sinalizadores APPCMD_ fornecem instruções especiais para DdeInitialize. Os sinalizadores CBF_ especificam filtros que impedem que tipos específicos de transações atinjam a função de retorno de chamada. Os sinalizadores MF_ especificam os tipos de atividade DDE que um aplicativo de monitoramento de DDE monitora. O uso desses sinalizadores aprimora o desempenho de um aplicativo DDE eliminando chamadas desnecessárias para a função de retorno de chamada.
Esse parâmetro pode ser um ou mais dos valores a seguir.
Valor | Significado |
---|---|
|
Torna possível que o aplicativo monitore a atividade de DDE no sistema. Esse sinalizador é usado por aplicativos de monitoramento de DDE. O aplicativo especifica os tipos de atividade DDE a serem monitoradas combinando um ou mais sinalizadores de monitor com o sinalizador APPCLASS_MONITOR. Para obter detalhes, consulte a seção Comentários a seguir. |
|
Registra o aplicativo como um aplicativo DDEML padrão (não monitorado). |
|
Impede que o aplicativo se torne um servidor em uma conversa DDE. O aplicativo só pode ser um cliente. Esse sinalizador reduz o consumo de recursos pelo DDEML. Ele inclui a funcionalidade do sinalizador CBF_FAIL_ALLSVRXACTIONS. |
|
Impede que o DDEML envie transações de XTYP_CONNECT e XTYP_WILDCONNECT para o aplicativo até que o aplicativo tenha criado seus identificadores de cadeia de caracteres e registrado seus nomes de serviço ou desabilitado a filtragem por uma chamada subsequente à função DdeNameService ou DdeInitialize. Esse sinalizador está sempre em vigor quando um aplicativo chama DdeInitialize pela primeira vez, independentemente de o aplicativo especificar o sinalizador. Em chamadas subsequentes para DdeInitialize, não especificar esse sinalizador desativa os filtros de nome de serviço do aplicativo, mas especificá-lo ativa os filtros de nome de serviço do aplicativo. |
|
Impede que a função de retorno de chamada receba transações de servidor. O sistema retorna DDE_FNOTPROCESSED para cada cliente que envia uma transação para esse aplicativo. Esse sinalizador é equivalente à combinação de todos os sinalizadores CBF_FAIL_. |
|
Impede que a função de retorno de chamada receba transações XTYP_ADVSTART e XTYP_ADVSTOP. O sistema retorna DDE_FNOTPROCESSED para cada cliente que envia uma transação XTYP_ADVSTART ou XTYP_ADVSTOP para o servidor. |
|
Impede que a função de retorno de chamada receba transações XTYP_CONNECT e XTYP_WILDCONNECT. |
|
Impede que a função de retorno de chamada receba transações XTYP_EXECUTE. O sistema retorna DDE_FNOTPROCESSED a um cliente que envia uma transação XTYP_EXECUTE para o servidor. |
|
Impede que a função de retorno de chamada receba transações XTYP_POKE. O sistema retorna DDE_FNOTPROCESSED a um cliente que envia uma transação XTYP_POKE para o servidor. |
|
Impede que a função de retorno de chamada receba transações XTYP_REQUEST. O sistema retorna DDE_FNOTPROCESSED para um cliente que envia uma transação XTYP_REQUEST para o servidor. |
|
Impede que a função de retorno de chamada receba transações XTYP_CONNECT da própria instância do aplicativo. Esse sinalizador impede que um aplicativo estabeleça uma conversa DDE com sua própria instância. Um aplicativo deve usar esse sinalizador se precisar se comunicar com outras instâncias de si mesmo, mas não consigo mesmo. |
|
Impede que a função de retorno de chamada receba notificações. Esse sinalizador é equivalente a combinar todos os sinalizadores CBF_SKIP_. |
|
Impede que a função de retorno de chamada receba XTYP_CONNECT_CONFIRM notificações. |
|
Impede que a função de retorno de chamada receba XTYP_DISCONNECT notificações. |
|
Impede que a função de retorno de chamada receba XTYP_REGISTER notificações. |
|
Impede que a função de retorno de chamada receba XTYP_UNREGISTER notificações. |
|
Notifica a função de retorno de chamada sempre que uma transação é enviada para qualquer função de retorno de chamada DDE no sistema. |
|
Notifica a função de retorno de chamada sempre que uma conversa é estabelecida ou encerrada. |
|
Notifica a função de retorno de chamada sempre que ocorrer um erro DDE. |
|
Notifica a função de retorno de chamada sempre que um aplicativo DDE cria, libera ou incrementa a contagem de uso de um identificador de cadeia de caracteres ou sempre que um identificador de cadeia de caracteres é liberado como resultado de uma chamada para a função DdeUninitialize. |
|
Notifica a função de retorno de chamada sempre que um loop de aconselhamento é iniciado ou encerrado. |
|
Notifica a função de retorno de chamada sempre que o sistema ou um aplicativo posta uma mensagem DDE. |
|
Notifica a função de retorno de chamada sempre que o sistema ou um aplicativo envia uma mensagem DDE. |
ulRes
Tipo: DWORD
Reservado; deve ser definido como zero.
Valor de retorno
Tipo: UINT
Se a função for bem-sucedida, o valor retornado será DMLERR_NO_ERROR.
Se a função falhar, o valor retornado será um dos seguintes valores:
Observações
Um aplicativo que usa várias instâncias do DDEML não deve passar objetos DDEML entre instâncias.
Um aplicativo de monitoramento de DDE não deve tentar executar operações DDE (estabelecer conversas, emitir transações e assim por diante) no contexto da mesma instância do aplicativo.
Uma transação síncrona falhará com um erro de DMLERR_REENTRANCY se qualquer instância da mesma tarefa tiver uma transação síncrona já em andamento.
O sinalizador CBF_FAIL_ALLSVRXACTIONS faz com que o DDEML filtre todas as transações de servidor e pode ser alterado por uma chamada subsequente para DdeInitialize. O sinalizador APPCMD_CLIENTONLY impede que o DDEML crie recursos importantes para o servidor e não pode ser alterado por uma chamada subsequente para DdeInitialize.
Há uma versão ANSI e uma versão Unicode do DdeInitialize. A versão chamada determina o tipo dos procedimentos de janela usados para controlar conversas DDE (ANSI ou Unicode) e o valor padrão do
Nota
O cabeçalho ddeml.h define DdeInitialize como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows 2000 Professional [somente aplicativos da área de trabalho] |
servidor com suporte mínimo | Windows 2000 Server [somente aplicativos da área de trabalho] |
da Plataforma de Destino |
Windows |
cabeçalho | ddeml.h (inclua Windows.h) |
biblioteca | User32.lib |
de DLL |
User32.dll |
Consulte também
Visão geral biblioteca de gerenciamento dinâmico do Data Exchange