![]() |
1
4
大多数程序员忘记检查的另一件事是资源管理器是否重新启动/崩溃。如果应用程序处理这个问题并重新创建自己的图标,那就太好了。 只需检查消息wm_taskbarcreated并重新创建图标。 |
![]() |
2
2
您可以有一个单独的、更简单(因此可能更健壮)的程序来监视您的应用程序。这个程序实际上可以启动您的程序,然后监视进程。是的,这是一个非常丑陋的解决方案。 |
![]() |
3
2
就我个人而言,我会使用矢量异常处理程序。是的,它基于seh,但是你不需要处理所有不同的堆栈,你可能需要放松。 terminateprocess()必须更具破坏性。你真的无法防范,当它发生的时候,你的过程就完了。不处理ORE指令,因此应用程序中有什么代码并不重要。 一个外部应用程序不会真的有帮助,是吗?它也可能坠毁,或者被杀死。 |
![]() |
4
1
嗯,您始终可以让外部监视器进程调用sendmessage,并将wm_paint消息发送到系统托盘窗口(您必须根据窗口的类执行此操作)。这将删除不再有效的图标。 |
![]() |
5
0
当以某种方式崩溃时,必须处理应用程序退出,否则图标不会消失。 如果有任何帮助,请查看: http://www.codeproject.com/KB/shell/ashsystray.aspx |
![]() |
6
0
你可以使用 SetUnhandledExceptionFilter 为了赶上撞车。我通常使用它来创建一个崩溃转储文件,以便可以调试崩溃,但是没有理由不能像删除托盘图标那样进行简单的清理。 |
![]() |
7
0
有很多方法可以确保
这是包装器的简化版本,但它将说明主要思想:如果您创建
所以,我们可以用这个
上面的例子调用
至于 终止进程 万一没有简单的办法。
我已经测试过了
希望能帮上忙(不过是6年后的一个答案,哈哈) |
![]() |
8
-1
没有直接解决您的问题,但这对我来说是一项非常有用的工作: 我想避免混淆系统托盘状态。所以对我来说,在启动时“刷新”通知托盘就足够了。这比我最初想象的要复杂,但是 following 演示一个SendMessage解决方案,该解决方案模拟用户在清理上的鼠标移动,而不需要实际移动用户的光标。
请注意,在Windows7计算机上
|
![]() |
rookie · 检查函数模板的所有参数包参数是否属于int 1 年前 |
![]() |
ivaigult · -W转换和隐式字符串到布尔类型转换 1 年前 |
![]() |
rainer · 后台插入程序的初始化 1 年前 |
![]() |
Community wiki · 以理智、安全和高效的方式复制文件 1 年前 |
|
Shefali Kanaujia · 对C中向量的向量进行排序++ 1 年前 |
|
Ma Joonyoung · 粗粒度和细粒度链表的时间比较 1 年前 |