Пример #1
0
BOOL TrayIcon_ShellUpdateTrayIcon(void)
{
    NOTIFYICONDATA    nid;
    HICON            hIcon = NULL;
    BOOL            bRetVal;
    
    memset(&nid, 0, sizeof(NOTIFYICONDATA));
    
    hIcon = TrayIcon_GetProcessorUsageIcon();
    
    nid.cbSize = sizeof(NOTIFYICONDATA);
    nid.hWnd = hMainWnd;
    nid.uID = 0;
    nid.uFlags = NIF_ICON | NIF_MESSAGE | NIF_TIP;
    nid.uCallbackMessage = WM_ONTRAYICON;
    nid.hIcon = hIcon;
    wsprintf(nid.szTip, _T("CPU Usage: %d%%"), PerfDataGetProcessorUsage());
    
    bRetVal = Shell_NotifyIcon(NIM_MODIFY, &nid);
    
    if (hIcon)
        DestroyIcon(hIcon);
    
    return bRetVal;
}
Пример #2
0
BOOL TrayIcon_ShellUpdateTrayIcon(void)
{
    NOTIFYICONDATAW    nid;
    HICON            hIcon = NULL;
    BOOL            bRetVal;
    WCHAR           wszCPU_Usage[255];

    LoadStringW(hInst, IDS_STATUS_BAR_CPU_USAGE, wszCPU_Usage, sizeof(wszCPU_Usage)/sizeof(WCHAR));
    
    memset(&nid, 0, sizeof(NOTIFYICONDATAW));
    
    hIcon = TrayIcon_GetProcessorUsageIcon();
    
    nid.cbSize = sizeof(NOTIFYICONDATAW);
    nid.hWnd = hMainWnd;
    nid.uID = 0;
    nid.uFlags = NIF_ICON | NIF_MESSAGE | NIF_TIP;
    nid.uCallbackMessage = WM_ONTRAYICON;
    nid.hIcon = hIcon;
    wsprintfW(nid.szTip, wszCPU_Usage, PerfDataGetProcessorUsage());
    
    bRetVal = Shell_NotifyIconW(NIM_MODIFY, &nid);
    
    if (hIcon)
        DestroyIcon(hIcon);
    
    return bRetVal;
}
Пример #3
0
BOOL TrayIcon_ShellUpdateTrayIcon(void)
{
    NOTIFYICONDATAW    nid;
    HICON            hIcon = NULL;
    BOOL            bRetVal;
    WCHAR           wszCPU_Usage[] = {'C','P','U',' ','U','s','a','g','e',':',' ','%','d','%','%',0};
    
    memset(&nid, 0, sizeof(NOTIFYICONDATAW));
    
    hIcon = TrayIcon_GetProcessorUsageIcon();
    
    nid.cbSize = sizeof(NOTIFYICONDATAW);
    nid.hWnd = hMainWnd;
    nid.uID = 0;
    nid.uFlags = NIF_ICON | NIF_MESSAGE | NIF_TIP;
    nid.uCallbackMessage = WM_ONTRAYICON;
    nid.hIcon = hIcon;
    wsprintfW(nid.szTip, wszCPU_Usage, PerfDataGetProcessorUsage());
    
    bRetVal = Shell_NotifyIconW(NIM_MODIFY, &nid);
    
    if (hIcon)
        DestroyIcon(hIcon);
    
    return bRetVal;
}