代码之家  ›  专栏  ›  技术社区  ›  ZeroZ30o

C++系统托盘程序

  •  -1
  • ZeroZ30o  · 技术社区  · 6 年前

    在检查了微软关于系统托盘图标的文档(我可以找到)之后:

    Shell_NotifyIconA function

    NOTIFYICONDATAA structure

    我注意到需要一个窗口手柄(hwnd)。这对我正在尝试完成的工作非常不利,因为我正在创建一个只对系统托盘做出反应的程序:它不会将窗口“最小化”到托盘,它只是使用通知(单击/右键单击图标)进行交互。

    我该怎么做呢?

    1 回复  |  直到 6 年前
        1
  •  3
  •   Olaf Hess    6 年前

    这个 Windows 7 SDK 包含一个名为 NotificationIcon . 此示例包含一行

    ShowWindow(hwnd, nCmdShow);
    

    在其 wWinMain 功能。这个调用的效果是您看到一个程序窗口。

    把这条线改成

    ShowWindow(hwnd, SW_HIDE);
    

    隐藏程序窗口,只显示系统托盘中的图标。正如其他人指出的,程序需要一个程序窗口,即使它不可见。

    推荐文章