Compartilhar via


SHNotificationRemove

Windows Mobile SupportedWindows Embedded CE Supported

9/9/2008

Essa função remove uma notificação. Isso está geralmente em resposta a alguma ação efetuada sobre os dados que está outside of o sistema notificação. De exemplo, se uma mensagem é ler ou excluídos e a notificação torna-se obsoleto por meios Other Than ação extraída a bolha notificação.

Syntax

LRESULT SHNotificationRemove(
  const CLSID* pclsid,
  DWORD dwID
);

Parameters

  • pclsid
    [no] Identificador de classe da notificação para remover.
  • dwID
    [no] Especifica o identificador exclusivo do ícone de notificação para remover. Não defina o valor desse parâmetro para 0; Essa opção não está implementada. Se o valor deste parâmetro for definido como 0, a função retornará um erro ERROR_INVALID_PARAMETER.

Return Value

Para todas as plataformas

Essa função retorna ERROR_SUCCESS quando bem-sucedido.

Para Mobile Windows

A seguinte lista mostra os valores de retorno em falha, um Windows Mobile 6 Professional e Windows Mobile 6 Classic.

  • ERROR_INVALID_PARAMETER
  • ERROR_OUTOFMEMORY
  • ERROR_DLL_INIT_FAILED
  • ERROR_NOT_FOUND
  • ERROR_NO_MATCH

A seguinte lista mostra os valores de retorno em falha, para Windows Mobile 6 Standard.

  • ERROR_INVALID_PARAMETER

Para obter uma descrição desses valores de erro, consulte Erros do SISTEMA - ordem alfabética.

Exemplo de código

O seguinte exemplo de código demonstra como usar SHNotificationRemove.

Observação

Para fazer o seguinte exemplo de código mais fácil de ler, verificação de segurança e manipulação de erro não estão incluídos.Esta exemplo de código não deve ser usado em uma configuração versão a menos que ele foi modificado para incluí-las.

static const GUID CLSID_SHNAPI_Test = { 0x33765136, 0x8cb9, 0x449a, { 0xb0, 0x20, 0x43, 0xed, 0x40, 0xa, 0xb8, 0xfc } };
void SHNotificationExample()
{
    // This code will add an SHNotification notification 
    SHNOTIFICATIONDATA sn  = {0};
    SHNOTIFICATIONDATA sn2 = {0};
    sn.cbStruct = sizeof(sn);
    sn.dwID = 1;
    sn.npPriority = SHNP_INFORM;
    sn.csDuration = 15;
    sn.hicon = LoadIcon(g_hInstance, MAKEINTRESOURCE(IDI_SAMPLEICON));
    sn.clsid = CLSID_SHNAPI_Test;
    sn.grfFlags = 0;
    sn.pszTitle = TEXT("Sample Notification");
    sn.pszHTML = TEXT("<html><body>This is <b>sample html</b> in a notification!</body></html>");
    sn.rgskn[0].pszTitle = TEXT("Dismiss");
    sn.rgskn[0].skc.wpCmd = 100;
    //Add the notification to the tray
    SHNotificationAdd(&sn);
    //Put the data from an existing notification into a second SHNOTIFICATIONDATA struct
    sn2.cbStruct = sizeof(sn2);
    SHNotificationGetData(&CLSID_SHNAPI_Test, 1, &sn2);
    //Update the title, HTML, icon, and softkeys of the notification
    sn2.pszTitle = TEXT("Updated - Sample Notification");
    sn2.pszHTML = TEXT("<html><body>This notification has been <b>updated!</b></body></html>");
    sn2.hicon = LoadIcon(g_hInstance, MAKEINTRESOURCE(IDI_SAMPLEICON2));
    sn2.rgskn[0].pszTitle = TEXT("Disabled");
    sn2.rgskn[0].skc.wpCmd = 100;
    sn2.rgskn[0].skc.grfFlags = NOTIF_SOFTKEY_FLAGS_DISABLED;
    SHNotificationUpdate(SHNUM_TITLE | SHNUM_HTML | SHNUM_ICON | SHNUM_SOFTKEYCMDS | SHNUM_SOFTKEYS, &sn2);
    //Remove the notification from the tray

    //Add a new notification that utilizes the MRE functionality
    sn.cbStruct = sizeof(sn);
    sn.dwID = 1;
    sn.npPriority = SHNP_INFORM;
    sn.csDuration = 15;
    sn.hicon = LoadIcon(g_hInstance, MAKEINTRESOURCE(IDI_SAMPLEICON));
    sn.clsid = CLSID_SHNAPI_Test;
    sn.grfFlags = SHNF_STRAIGHTTOTRAY;
    sn.pszTodaySK = TEXT("New Task");
    sn.pszTodayExec = TEXT("\\windows\\tasks.exe");
    //Add the notification to the tray
    SHNotificationAdd(&sn);
    //Remove the notification from the tray
    SHNotificationRemove(&CLSID_SHNAPI_Test, 1);
}

Remarks

Notificações são geralmente removidas quando o usuário toques em um link na bolha de notificação. Esta função só precisa ser chamado quando a notificação precisa ser removido because of externo alterações no estado.

Requirements

Header aygshell.h
Library aygshell.lib
Windows Embedded CE Windows Embedded CE 6.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also

Reference

Shell Functions
SHNotificationAdd
SHNotificationUpdate
SHNotificationGetData
SHNOTIFICATIONDATA