如何隐藏迅雷开放下载引擎的托盘图标【已解决】
本帖最后由 my52091 于 2013-2-21 11:07 编辑迅雷开放下载引擎在调用时会在托盘上显示出来,不小心点了下就会自动下载并安装迅雷7,很恶心的做。
请问各位大大,如何隐藏迅雷开放下载引擎的托盘图标。附件包含AU3调用的例子,大家可以试试,因为没有迅雷开放下载引擎进程,所以不好隐藏。 不错,记得我曾写了迅雷开放引擎au3的例子,有人发扬光大呀
非常好的事。
#include <Memory.au3>
TrayIconToggle(0)
Func TrayIconToggle($iToggle)
Local Const $tag = "int Bitmap;int Command;byte State;byte Style;align;dword_ptr Param;int_ptr String"
Local $hTray, $hToolbar, $iCount, $sText, $iCmd
Local $tButton, $iBuffer, $iSize, $tMemMap, $pMemMap
$hTray = WinGetHandle("")
$hToolbar = ControlGetHandle($hTray, "", "")
$iCount = _SendMessage($hToolbar, 1048)
For $i = 0 To $iCount - 1
$tButton = DllStructCreate($tag)
$iSize = DllStructGetSize($tButton)
$pMemMap = _MemInit($hToolbar, $iSize, $tMemMap)
_MemWrite($tMemMap, $tButton, $pMemMap, $iSize)
_SendMessage($hToolbar, 1047, $i, $pMemMap, 0, "wparam", "ptr")
_MemRead($tMemMap, $pMemMap, $tButton, $iSize)
_MemFree($tMemMap)
$iCmd = DllStructGetData($tButton, "Command")
$iBuffer = (_SendMessage($hToolbar, 1099, $iCmd) + 1) * 2
$tBuffer = DllStructCreate("wchar Text[" & $iBuffer & "]")
$pMemMap = _MemInit($hToolbar, $iBuffer, $tMemMap)
_SendMessage($hToolbar, 1099, $iCmd, $pMemMap, 0, "wparam", "ptr")
_MemRead($tMemMap, $pMemMap, $tBuffer, $iBuffer)
_MemFree($tMemMap)
$sText =DllStructGetData($tBuffer, "Text")
If StringInStr($sText, "迅雷下载开放引擎") Then ExitLoop
Next
If $iToggle Then
_SendMessage($hToolbar, 1041, $iCmd, 8)
Else
_SendMessage($hToolbar, 1041, $iCmd, 4)
EndIf
EndFunc
好方法,不过在下载完成后,迅雷的图标又出来的。
@happytc大大,可以将你的代码注释一下吗?帮助文档里找不到函数的解释,看起过表示压力大 好方法,不过在下载完成后,迅雷的图标又出来的。
@happytc大大,可以将你的代码注释一下吗?帮助文档里找不到函数的解释,看起过表示压力大 回复 4# my52091
主要是学习微软的msdn上文档,属于Windows编程基础知识部分,基本跟au3没有关系。其实主要就是给控件发消息,让它返回需要的。托盘栏,也就是个工具栏了,不过是系统内建的工具栏而已。
如果基础有了,不写注释,也明白;若没有基础,写了注释,基本也是白写! 学习了,真的想好好学习了 学习了~~~~~ 好好学习一下 回复 2# happytc
隐藏后会出现空白区域,会觉得有点怪怪的 win7 64 下 只会把排在最后的一个图标隐藏掉。而隐藏不掉到指定的图标。 好好学习一下 {:face (229):} 翻贴学习。。。。。。。。。。 学习了看一看看!!! 谢谢分享,必须支持!
页:
[1]
2