清理任务栏残留图标VB6版 附源程序

2024-03-12 15:08

本文主要是介绍清理任务栏残留图标VB6版 附源程序,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

今日的工作中要强制结束另外一个进程,但是那个进程却拥有任务栏图标,在强制结束后它的任务栏图标没有被清除...呵呵,网上找不到这样的的函数,不过有个Delphi版,那只有俺亲自动手改写它了,...

下面是我写的VB6源代码,需要就拿去..不需要的就学习..呵呵


'清理任务栏残留图标 2006-9-20

'我想任何人都遇到过这样的情况:
'任务栏右下角的快捷图标有时并不会随着程序的关闭而消失
'只有当鼠标划过时才消失
'下面的函数可以通过自动划过并清除这些图标

Option Explicit
Private Declare Function RedrawWindow Lib "user32" (ByVal hwnd As Long, lprcUpdate As Long, ByVal hrgnUpdate As Long, ByVal fuRedraw As Long) As Long
Private Declare Function FindWindowEx Lib "user32" Alias "FindWindowExA" (ByVal hWnd1 As Long, ByVal hWnd2 As Long, ByVal lpsz1 As String, ByVal lpsz2 As String) As Long
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function GetWindowRect Lib "user32" (ByVal hwnd As Long, lpRect As RECT) As LongPrivate Declare Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long
Private Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
Private Declare Function SetCursorPos Lib "user32" (ByVal x As Long, ByVal y As Long) As Long
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private Type RECTLeft As LongTop As LongRight As LongBottom As Long
End Type
Private Type POINTAPIx As Longy As Long
End Type
Private Const RDW_INVALIDATE = &H1
Private Const RDW_ERASE = &H4
Private Const RDW_UPDATENOW = &H100
Private Const SM_CXSMICON = 49
Private Const SM_CYSMICON = 50Public Sub RemoveDeadIconFromSysTray()Dim TrayWindow As LongDim WindowRect As RECTDim SmallIconWidth As LongDim SmallIconHeight As LongDim CursorPos As POINTAPIDim Row As LongDim Col As Long'获得任务栏句柄和边框TrayWindow = FindWindowEx(FindWindow("Shell_TrayWnd", vbNullString), 0, "TrayNotifyWnd", vbNullString)If GetWindowRect(TrayWindow, WindowRect) = 0 Then Exit Sub'获得小图标大小SmallIconWidth = GetSystemMetrics(SM_CXSMICON)SmallIconHeight = GetSystemMetrics(SM_CYSMICON)'保存当前鼠标位置Call GetCursorPos(CursorPos)'使鼠标快速划过每个图标For Row = 0 To (WindowRect.Bottom - WindowRect.Top) / SmallIconHeightFor Col = 0 To (WindowRect.Right - WindowRect.Left) / SmallIconWidthCall SetCursorPos(WindowRect.Left + Col * SmallIconWidth, WindowRect.Top + Row * SmallIconHeight)Call Sleep(10)  '发现这个地方参数为 0 的时候,有时候是不够的NextNext'恢复鼠标位置Call SetCursorPos(CursorPos.x, CursorPos.y)'重画任务栏Call RedrawWindow(TrayWindow, 0, 0, RDW_INVALIDATE Or RDW_ERASE Or RDW_UPDATENOW)
End Sub

(请参考Delphi版:清理任务栏残留图标Delphi版 附源程序)
http://blog.csdn.net/tanaya/archive/2006/09/20/1253004.aspx

 


 

这篇关于清理任务栏残留图标VB6版 附源程序的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/801659

相关文章

把Sublime Text 2 加入右键菜单(带图标), Edit with Sublime Text

Sublime Text 2 是现在很受大家欢迎的编辑器了,不仅是在web前端,在书定简单的php、Js等代码时,也是相当的好用,再配合多种的插件和新颖的界面,更是让人欲罢不能。 在使用时,我们通过喜欢打开一个文件的时候,右击再选择打开程序,比如会用记事本、Notedpad++之类的,这时如果把Sublime Text也加入到其中毕竟会方便不少,在找了一番后,实验成功,效果如下: 实现

Qt: QPushButton 按钮实现 上图标下文字

效果如下:  实现有如下几种方式: 1. 使用 QPushButton 设置 setStyleSheet 例: ui->recorder->setStyleSheet("QPushButton{"\"border: 1px solid #00d2ff; "\"min-height: 60px; "\"color: #FFFFFF;;

黑马苍穹外卖6 清理redis缓存+Spring Cache+购物车的增删改查

缓存菜品 后端服务都去查询数据库,对数据库访问压力增大。 解决方式:使用redis来缓存菜品,用内存比磁盘性能更高。 key :dish_分类id String key= “dish_” + categoryId; @RestController("userDishController")@RequestMapping("/user/dish")@Slf4j@Api(tags = "

Linux - 利用/proc/sys/vm/drop_caches实现手工清理系统缓存

文章目录 现象`buff/cache` 的作用和含义分析 `buff/cache` 占用大量内存的原因是否需要清理缓存及其方法 命令清理缓存方法1. `sync` 命令2. `echo 3>/proc/sys/vm/drop_caches` 命令 注意事项小结 现象 使用free 命令,看到 buff/cache 占用很多 。 free 命令用于显示系统内存的使用情

电脑文件夹图标颜色更改

每天都在和电脑打交道,是不是觉得那些千篇一律的黄色文件夹看起来太单调了呢?别担心,今天我要给大家介绍一个超棒的小工具——Folder Painter V1.3,让你的文件夹瞬间变得五彩斑斓,个性十足!🎨 软件获取方式在链接底部:有趣好玩的神仙软件!近300样式!拒绝单调平庸! 看到下面的文件夹你是不是心动了呢!商务范,少女心,逗比,搞笑,应有尽有~ 软件特点 1. 多彩图标自定义

手工清理Linux后门:深入分析与实践指南

手工清理Linux后门:深入分析与实践指南 后门概述 后门程序允许未授权用户绕过正常的认证过程,获取对系统的访问权限。攻击者可能会通过修改计划任务、开机启动脚本,甚至植入Rootkit来维持后门。 分析操作系统被动手脚 在清理后门之前,首先需要分析系统可能被动了哪些手脚: 计划任务:检查/etc/cron.d/和/var/spool/cron/目录下的计划任务。开机启动脚本:检查/etc

Windows10任务栏卡顿解决方案

一、重新启动任务资源管理器 右键底部任务栏选择“任务管理器”;按快捷键“Ctrl+Shift+Esc”;搜索框搜索“任务管理器”并单击“打开”;“Win+X”打开开始菜单附属菜单,在列表中选择“任务管理器” ;按下“ctrl+alt+delete”键,选择打开“任务管理器”; 二、关闭任务栏不需要的显示 右击点击任务栏设置,关闭不需要的显示,例如新闻资讯等。 三、重新部署操

QT QML 界面设计教程8——图标(图片)标签样式

MyIconLabel.qml import QtQuick 2.14//Item可以替换为Rectangle以设置背景色Item{id: controlproperty alias source: _icon.sourceproperty alias imageWidth: _icon.widthproperty alias imageHeight:_icon.heightproperty

C#修改 EXE 文件图标和 winForm 窗口图标

修改 EXE 文件图标 1.准备好图片,转换为 Icon 图片; 2.右键工程,选择属性; 3.选择 Icon 图标即可; 4.重新生成可执行文件,查看。 修改 winForm 窗口图标 1.选中 winForm ,查看属性; 2.选择 Icon 图标; 3.运行程序查看效果。

Android几个常用的网站,你可以在这些网站上找到各种各样的免费和付费图标

Material Icons: 这是Google提供的图标库,风格和Android系统非常匹配。你可以在这里找到很多常用的图标。Material Icons 网站 Flaticon: 这是一个非常大的图标库,里面有各种风格的图标,你可以搜索到你需要的导航栏图标。Flaticon 网站 IconFinder: 这个网站也提供大量的图标,支持按风格和用途搜索。IconFinder 网站 获取