Compartilhar via


SHNOTIFICATIONDATA

Windows Mobile SupportedWindows Embedded CE Supported

9/9/2008

Essa estrutura contém dados notificação ícone.

Syntax

typedef struct _SHNOTIFICATIONDATA{
  DWORD cbStruct;
  DWORD dwID;
  SHNP npPriority;
  DWORD csDuration;
  HICON hicon;
  DWORD grfFlags;
  CLSID clsid;
  HWND hwndSink;
  LPCTSTR pszHTML;
  LPCTSTR pszTitle;
  LPARAM lParam;
  union
  {
    SOFTKEYMENU skm;
    SOFTKEYNOTIFY rgskn[NOTIF_NUM_SOFTKEYS];
  }
  LPCTSTR pszTodaySK;
  LPCTSTR pszTodayExec;
} SHNOTIFICATIONDATA;

Os membros

For All Platforms:

  • cbStruct
    Tamanho da estrutura, em bytes, usadas para verificação e versionamento.
  • dwID
    Identificador para essa notificação específica.
  • npPriority
    A prioridade para a notificação, fornecida pelo SHNP enumeração.
  • csDuration
    Duração da notificação. O uso depende de como o valor de npPriority. Tempo está em segundos. Um valor de-1 indica infinita duração; Isto é, a notificação permanecerá até que o usuário deixe de usar, de exemplo, com exigido pressionamentos de teclas entrada do usuário.
  • hicon
    Identificador para o ícone para a notificação.
  • grfFlags
    Determina quais os membros de estrutura são válido ou ativo. A seguinte tabela mostra os valores possíveis sinalizador.

    Sinalizador Descrição

    SHNF_ALERTONUPDATE

    Alertas físicos são repetidos quando há uma atualização para a notificação.

    SHNF_CRITICAL

    O título da notificação e borda são realçado.

    SHNF_DISPLAYON

    A exibir será forçado a ativar para a notificação.

    SHNF_FORCEMESSAGE

    A notificação é forçada para exibir, regardless of as configurações.

    SHNF_HASMENU

    O softkey barra é criada de uma HMENU passado skm estrutura.

    SHNF_SHNF_SPINNERS

    A notificação pode ser empilhada.

    SHNF_SILENT

    A notificação será forçada a ser silencioso e não Vibrar, independentemente de configurações.

    SHNF_STRAIGHTTOTRAY

    A notificação não é exibida quando ele é adicionado inicialmente. O ícone irá exibir para csDuration segundos e será, em seguida, vá direto para a bandeja. O usuário pode exibição o ícone para ver a notificação abrindo a bandeja.

    SHNF_TITLETIME

    O atual tempo é exibido com o título notificação.

    SHNF_WANTVKTTALK

     

  • CLSID
  • hwndSink
    Identificador para a janela para receber opções de comando, descartar e SO on.
  • pszHTML
    De conteúdo HTML para a bolha notificação.
  • pszTitle
    Seqüência de caracteres que contém o opcional Título para notificação bolha.
  • lParam
    Parâmetro User-defined.

  • skm
    SOFTKEYMENU estrutura que define um menu para o softkey barra para a notificação. O grfFlags membro deve ser definido como SHNF_HASMENU se essa união tipo é usado.

  • rgskn
    SOFTKEYNOTIFY estrutura que define um menu para o softkey barra para a notificação e define dois softkeys.
  • pszTodaySK
    Seqüência de caracteres que contém o texto para exibir na Tela do dia para o softkey SK1. Se este seqüência de caracteres for definida como NULL, o texto usar como padrão "notificação" será exibida.
  • pszTodayExec
    Ponteiro para o arquivo executável que irá executar quando o softkey SK1 é pressionado. Se esse ponteiro for definido como NULL, o toast será exibida.

Remarks

Para Mobile Windows

Para Windows Mobile se o valor de grfFlags membro é definido como SHNF_WANTVKTTALK e a janela coletor é um diálogo, ele deve usar DWL_MSGRESULT para retornar o valor.

O seguinte codificar pode ser adicionado da janela de coletor WndProc função ao identificador de mensagem encaminhada.

case WM_NOTIFY:
   switch(wParam)
   {
      case my_dwID:   // the dwID passed into SHNOTIFICATIONDATA when calling SHNotificationAdd
      {
         NMSHN* pnmshn = (NMSHN*)lParam;
         if (pnmshn->hdr.code == SHNN_HOTKEY)
         {
            if (HIWORD(pnmshn->lParam) == VK_TTALK)
            {
               //insert code here to handle VK_TTALK
               //only need to call SetWindowLong if the sinkwindow is a dialog
               SetWindowLong(hWnd, DWL_MSGRESULT, 1);
               //return TRUE to inform the Shell that the button was handled
               return TRUE;
            }
         }
      break;
      }
   }
   break;

O aplicativo chamado proprietária pszHTML, pszTitle, pszTodaySK, pszTodayExec, e skm Ou rskn Deve também livre de memória quando ela retorna. O seguinte exemplo de código ilustra este concepção.

void FreeNotificationData(SHNOTIFICATIONDATA * pnd)
{
    LocalFree((HLOCAL)pnd->pszHTML);
    LocalFree((HLOCAL)pnd->pszTitle);
    LocalFree((HLOCAL)pnd->pszTodaySK);
    LocalFree((HLOCAL)pnd->pszTodayExec);
    if (pnd->grfFlags & SHNF_HASMENU)
    {
        LocalFree((HLOCAL)pnd->skm.prgskc);
    }
    else
    {
        LocalFree((HLOCAL)pnd->rgskn[0].pszTitle);
        LocalFree((HLOCAL)pnd->rgskn[1].pszTitle);
    }
}

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

SHNotificationGetData

Other Resources