Alvin.Liang 2016-08-03 14:55 采纳率: 0%
浏览 1223
已结题

WPF如何在没有窗体句柄只有托盘图标情况下跨线程接收信息?

一个WPF程序,最小化的时候,不显示在任务栏上,仅仅保留一个托盘图标。用户点击托盘图标,重新显示窗体。

如何跨线程对这个程序发送信息?当最小化时不显示在任务栏时是无法通过FindWindow找到窗体句柄的。

我试过用PostMessage,RegisterWindowMessage,并且将参数设置为HWND_BROADCAST,但是仅能在窗体显示的情况下获取到消息。当窗体最小化并且不在任务栏显示时,不能接收消息。

“如果此参数为HWND_BROADCAST,则消息将被发送到系统中所有顶层窗口,包括无效或不可见的非自 身拥有的窗口、被覆盖的窗口和弹出式窗口,但消息不被发送到子窗口。”这句话是不包括最小化同时不显示在任务栏的窗体???****_

  • 写回答

2条回答 默认 最新

  • threenewbee 2016-08-03 15:16
    关注

    没有窗体,可以application.run()启动一个消息循环。
    也可以直接用wcf通讯,不用消息。后者更好,尤其是考虑发送大量数据。

    评论

报告相同问题?

悬赏问题

  • ¥17 pro*C预编译“闪回查询”报错SCN不能识别
  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向