CODE
#include <stdio.h>
#include <windows.h>
#include <time.h>
NOTIFYICONDATA id;
LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message) {
case WM_DESTROY:
Shell_NotifyIcon(NIM_DELETE, &id); // This removes the icon
break;
case WM_USER + 1: // Mouse action occured over the sys tray icon
switch (lParam) {
case WM_LBUTTONUP: // Left button clicked
//Click code here
break;
}
return TRUE;
}
return DefWindowProc(hwnd, message, wParam, lParam);
}
int CALLBACK WinMain(__in HINSTANCE hInstance, __in HINSTANCE hPrevInstance, __in LPSTR lpCmdLine, __in int nCmdShow){
WNDCLASS Wc;
Wc.style = 0;
Wc.lpfnWndProc = WndProc;
Wc.cbClsExtra = 0;
Wc.cbWndExtra = 0;
Wc.hInstance = NULL;
Wc.hIcon = NULL;
Wc.hCursor = NULL;
Wc.hbrBackground = NULL;
Wc.lpszMenuName = NULL;
Wc.lpszClassName = "HIDDENWINDOW";
RegisterClass(&Wc);
HWND hWnd = CreateWindow("HIDDENWINDOW", "Hidden Window", 0, 0, 0, 0, 0, NULL, NULL, NULL, NULL);
id.cbSize = sizeof(NOTIFYICONDATA);
id.hIcon = LoadIcon(NULL, IDI_QUESTION);
id.hWnd = hWnd;
strcpy(id.szTip, "");
id.uFlags = NIF_ICON | NIF_TIP;
Shell_NotifyIcon(NIM_ADD, &id);
while (1){
sprintf_s(id.szTip, 16, "%d", GetTickCounter());
Shell_NotifyIcon(NIM_MODIFY, &id);
Sleep(1000);
}
return 0;
}