Code:
#include <windows.h>

#define IDH_HIDE 101
#define IDH_SHOW 102

BOOL SetWindowState(LPCSTR lpClassName, LPCSTR lpWindowName, int nCmdShow)
{
    HWND hWnd = FindWindow(lpClassName, lpWindowName);

    return(ShowWindow(hWnd, nCmdShow));
}

LRESULT CALLBACK WndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
    switch(msg)
    {
    case WM_CREATE:
    {
        RegisterHotKey(hWnd, IDH_HIDE, MOD_CONTROL | MOD_ALT, 0x48);
        RegisterHotKey(hWnd, IDH_SHOW, MOD_CONTROL | MOD_ALT, 0x53);
    }
    break;
    case WM_HOTKEY:
    {
        switch(wParam)
        {
            case IDH_HIDE:
            {
                SetWindowState("Shell_TrayWnd", "", SW_HIDE);
            }
            break;
            case IDH_SHOW:
            {
                SetWindowState("Shell_TrayWnd", "", SW_SHOW);
            }
            break;
        }
    }
    break;
    case WM_CLOSE:
    {
        DestroyWindow(hWnd);
    }
    break;
    case WM_DESTROY:
    {
        PostQuitMessage(0);
    }
    break;
    default:
        return(DefWindowProc(hWnd, msg, wParam, lParam));
    }

    return 0;
}

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
                   LPSTR lpCmdLine, int nCmdShow)
{
    WNDCLASSEX wndClass;
    HWND hWnd;
    MSG msg;

    wndClass.cbSize = sizeof(WNDCLASSEX);
    wndClass.style = 0;
    wndClass.lpfnWndProc = WndProc;
    wndClass.cbClsExtra = 0;
    wndClass.cbWndExtra = 0;
    wndClass.hInstance = hInstance;
    wndClass.hIcon = LoadIcon(NULL, IDI_APPLICATION);
    wndClass.hCursor = LoadCursor(NULL, IDC_ARROW);
    wndClass.hbrBackground = (HBRUSH)(COLOR_BTNFACE+1);
    wndClass.lpszMenuName = NULL;
    wndClass.lpszClassName = "HidebarClass";
    wndClass.hIconSm = LoadIcon(NULL, IDI_APPLICATION);

    if(!RegisterClassEx(&wndClass))
    {
        MessageBox(NULL, "RegisterClassEx() failed.", "Hidebar",
                   MB_ICONERROR | MB_OK);
        return 0;
    }

    hWnd = CreateWindowEx(0, "HidebarClass", "Hidebar", WS_OVERLAPPEDWINDOW,
                          CW_USEDEFAULT, CW_USEDEFAULT, 640, 480, NULL, NULL,
                          hInstance, NULL);

    if(hWnd == NULL)
    {
        MessageBox(NULL, "CreateWindowEx() failed.", "Deskutil",
                   MB_ICONERROR | MB_OK);
        return 0;
    }

    ShowWindow(hWnd, SW_HIDE);
    UpdateWindow(hWnd);

    while(GetMessage(&msg, NULL, 0, 0) > 0)
    {
        TranslateMessage(&msg);
        DispatchMessage(&msg);
    }

    return msg.wParam;
}
Chạy với VC++ 6,Alt +Ctrl + H để Ẩn,Atl + Ctrl + S để Hiện
Nguồn