你的意思是在system tray 里显示icon吧:    NOTIFYICONDATA nid;
    nid.cbSize = sizeof(NOTIFYICONDATA);
    nid.hWnd = m_pMainWnd->m_hWnd;
    nid.uID = ID_TASKBARICON;
    nid.uFlags = NIF_ICON|NIF_MESSAGE|NIF_TIP; 
    nid.uCallbackMessage = WM_USER_NOTIFY;
    nid.hIcon = LoadIcon(IDR_MAINFRAME);
    strcpy(nid.szTip, "Application Name");     Shell_NotifyIcon(NIM_ADD, &nid);

解决方案 »

  1.   

    以上代码加入CYourWinApp::InitInstance()
      

  2.   

    1. WM_SIZE 消息,当 nType 为 SIZE_MINIMIZED 时表示最小化。
    2. nid.uCallbackMessage 是自定义消息,由 nid.hWnd 对应消息函数处理LRESULT CMainFrame ::OnMyIconNotify( WPARAM wParam, LPARAM lParam )
    {
    //wParam 是 nid.uID,有多个图标时需要判断
    if( lParam == WM_LBUTTONDBLCLK )
    {
    ShowWindow( SW_SHOW );
    }
    return 0;
    }
      

  3.   

    Wugifer() (  ) 高手.
    但ShowWindow( SW_SHOW );并不能把窗口显示出来,只显示在任务栏上,要显示窗口还需要单击它,有没有办法直接显示出来.谢谢!
      

  4.   

    再MSDN上搜索NOTIFYICONDATA就可找到一个例子。你可仔细研究研究
      

  5.   

    那怎么使程序一启动就HIDE在任务栏上?还有
    ShowWindow(SW_SHOW)可以把窗口显示出来的。
    试过,就是不能使程序一启动就HIDE起来??
    谢谢!!
      

  6.   

    Which API function is used for hiding icon in system tray?
      

  7.   

    回 quanxiongwei(毛毛熊) :LRESULT CComposerDlg::OnTaskbarIcon( WPARAM wParam, LPARAM lParam )
    {
       if( lParam == WM_LBUTTONDBLCLK )
        {
            ShowWindow( SW_NORMAL );
            SetForegroundWindow();
         }
        return TRUE;

    }