processamento de mensagens Painel de Controle

A função de retorno de chamada CPlApplet processa todas as mensagens enviadas a um item de Painel de Controle pelo Windows. As mensagens enviadas para a função estão em uma ordem específica. Pelo mesmo token, o item .cpl requer que as mensagens sejam processadas de maneira específica.

Primeiro, a função CPlApplet recebe a mensagem CPL_INIT quando o Windows carrega o item Painel de Controle pela primeira vez. A função deve realizar qualquer inicialização, como alocar memória, e retornar diferente de zero. Se o CPlApplet não puder concluir a inicialização, ele deverá retornar zero, orientando o Windows a encerrar a comunicação e liberar a DLL.

Em seguida, se a mensagem CPL_INIT tiver sido bem-sucedida, o Windows enviará a mensagem de CPL_GETCOUNT. Em seguida, a função deve retornar o número de Painel de Controle itens compatíveis com o arquivo .dll.

Em seguida, a função CPlApplet recebe uma mensagem CPL_INQUIRE e uma mensagem CPL_NEWINQUIRE para cada item de Painel de Controle compatível com o arquivo .dll. A função preenche uma estrutura CPLINFO ou NEWCPLINFO com informações sobre seu item, como seu nome, ícone e uma cadeia de caracteres descritiva. A maioria dos aplicativos deve processar a mensagem CPL_INQUIRE e ignorar a mensagem de CPL_NEWINQUIRE. A mensagem CPL_INQUIRE fornece informações em um formulário que o Windows pode armazenar em cache, o que resulta em um desempenho muito melhor. A mensagem CPL_NEWINQUIRE será usada somente se você precisar alterar o ícone do item ou exibir cadeias de caracteres com base no estado do computador. Painel de Controle itens que usam CPL_NEWINQUIRE não podem ser encontrados por uma pesquisa de menu Iniciar no Windows Vista porque ela depende do cache.

A função CPlApplet recebe uma mensagem CPL_DBLCLK como uma notificação de que o usuário escolheu o ícone que representa o item Painel de Controle. A função pode receber essa mensagem várias vezes. A mensagem inclui o identificador de item e o ponteiro lpData retornado na estrutura CPLINFO ou NEWCPLINFO na chamada para CPL_INQUIRE ou CPL_NEWINQUIRE. A função deve exibir a caixa de diálogo correspondente e processar a entrada subsequente do usuário.

Além de CPL_DBLCLK, a mensagem de CPL_STARTWPARMS poderá ser enviada se um item de Painel de Controle for invocado com parâmetros de entrada, como de um prompt de comando ou de outro programa. A mensagem inclui o identificador de item junto com a cadeia de caracteres de parâmetro adicional.

Antes que o aplicativo de controle seja encerrado, o CPlApplet recebe a mensagem de CPL_STOP uma vez para cada item de Painel de Controle compatível com o arquivo .dll. A mensagem inclui o identificador do item Painel de Controle e o ponteiro lpData retornado na estrutura CPLINFO ou NEWCPLINFO na chamada para CPL_INQUIRE ou CPL_NEWINQUIRE. A função deve liberar qualquer memória alocada para a caixa de diálogo especificada.

Após a última mensagem CPL_STOP, CPlApplet recebe uma mensagem de CPL_EXIT. A função deve liberar toda a memória alocada restante e cancelar o registro de todas as classes de janela privada que ela possa ter registrado. Imediatamente após o retorno da função dessa mensagem, o Windows libera o item Painel de Controle chamando a função FreeLibrary.

Itens Painel de Controle

Diretrizes da Experiência do Usuário

Registrando itens de Painel de Controle

Usando CPLApplet

Executando itens de Painel de Controle

Estendendo itens de Painel de Controle do sistema

Atribuindo categorias de Painel de Controle

Criando links de tarefa pesquisáveis para um item de Painel de Controle

Acessando o Painel de Controle no modo de segurança no Windows Vista