昨晚一直在测试一个把程序最小化到系统托盘的 AHK 脚本——mini2tray,测试到一半发现一个非常郁闷的 bug :BossKey 功能竟然只能用一次!如果你有兴趣的话,不妨试试它,令我佩服的是:在窗口标题栏上按下鼠标滚轮,窗口就会最小化到系统托盘。该脚本是纯快捷键实现操作的。右击其托盘图标,选“ Preferences ”就会打开其设置快捷键界面。
今天柠檬(LEMONed)同学在 Gtalk 上说: thinkpad 有一个很好用的工具,能非常方便的移除 usb 设备,你有空研究一下 ahk 的这个功能吧。
其实这个功能早就在我的 AHK 系列计划列表里面了。既然柠檬提到了,就顺便写出来吧。
特色功能——可以对付莫名其妙的:无法停止 ‘通用卷’ 设备。这个错误窗口,可是人人喊打。用过 Unlocker 的朋友一定会这样弹出 U 盘:打开我的电脑 → 右击 U 盘 → unlocker → 全部解锁 → 再弹出一次 U 盘。
下面的脚本就是使用了 Unlocker 的命令参数。来看看用 AHK 写出来的吧:
相关链接: 带有绿色版 Unlocker 的压缩包:box | 无 Unlocker 的压缩包:box
DriveGet, DriverList, list, REMOVABLE
; 列出( list )移动设备( REMOVABLE )的盘符,如果你有两个移动设备,它们的盘符分别是 H: 和 I: 的话,那么这里 DriverList 的值会是: HI ,省略“ : ”。
StringSplit, DriverListArray, DriverList
; 把 DriverList 的值进行字符串分解,后面不带任何要分割的符号的话,表示一个字母一个字母地分解,这样我们就可以得到每一个盘符了。
loop %DriverListArray0%
{
RegRead, UnlockerPath, HKEY_LOCAL_MACHINE, SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Unlocker, DisplayIcon
; 读取注册表,获得 Unlocker.exe 所在路径。
target = % DriverListArray%A_Index% . “: ”
; 从后面开始解释:
; . “: “,连接一个字符串“ : ”
; %A_Index% ,表示当前循环到第几次
; % DriverListArray%A_Index% ,表示第 N 个移动磁盘
runwait %UnlockerPath% %target% /s
; 等待 Unlocker 的退出。这里就是解锁每一个移动磁盘了。 /s 参数用来让 Unlocker 在后台运行。
run %A_ScriptDir%\unplug.exe %target%
; %A_ScriptDir% ,代表当前脚本所在的文件夹。利用 unplug.exe 弹出 U 盘。
}
TrayTip,, 所有移动设备全部弹出! ,3000
; 弹出气泡提示, 3 秒后气泡消失。 TrayTip 的完整语法是: TrayTip [, 标题 , 文字 , 时间 , Options]
sleep 3000
怎样制造无法停止 ‘通用卷’ 设备呢?很简单,用 Winrar 之类的软件打开 U 盘里的压缩包就行了。
另外,如果你觉得系统托盘一排的 H ,或者一排的图标太碍眼了,在那些脚本的开头加上:
#NoTrayIcon
就可以隐藏其托盘图标。
# sfufoet :我弄了个 AutoHotKey 的 Google Group,有兴趣的不妨加进来。最后,感谢我们煎蛋的阿企的测试。
AHK 系列 | 上回 | 来自 appinn.com | 下回预告: AHK 快餐店 [18] 之 关掉天网防火墙的开机提示
[…] update:下回:AHK 快餐店[17] 之 秒杀 U 盘 (1 votes, average: 5 out of 5) Tags: AHK, 智能, 系统 | 411 views 订阅分享 抓虾 | 鲜果 | GReader | Del.icio.us | QQ 书签 | 就喜欢 | Mister Wong 相关文章Windows 清理助手 – 系统清理利器CCleaner – 注册表及系统清理工具Mz Cpu Accelerator – CPU 优化利器Volumouse – 系统音量鼠标控制Shedko Bulba – 系统配置详查 […]
我测试过的,很小很强大
O_o 操,留言要中文
说明楼上很久没过来小众留言了。BS!
柠檬同学是说外语的,麻烦你老说中文了。。。
忘记给 阿企 记上一笔了。补上补上。
不行,还不是我想要的效果。。
晕倒,要什么效果自己改。
unlocker 和 hoekey 是我电脑的必备软件。。
还行,呵呵,欢迎大家来5D壁纸论坛做客,http://5dwall.cn
最新最酷最全的壁纸正在进行中….
???? ?? ??? ?????? ??????? ??????? ???????? ?????? ????????? ??????? ???? ?????? ?????? ?????
阿拉伯文也不行。。。
不错。谢谢小众软件能够提供这么多有用的软件。
旁边feedsky那个调查很赞。吕胖子很用心啊。哈哈
支持一下Google Group
[…] 同学再次发难。相对于 sfufoet 的 秒杀 U 盘 […]
@sfufoet:用了,确实很好用(带Unlocker的那个),不过不知道怎么编译成独立文件来用。
测试不带unlocker的那个脚本,好像就是贴在这的这个.AHK,读取注册表获得unlocker的路径出错。
error:
……
—> 014: RunWait,%UnlockerPath% %target% /s
……
@sfufoet:啊,不好意思,是我的错,忘记了自己的Unlocker是绿色版的,注册表没有unlocker的“DisplayIcon”键值。添加上去就行了。
BTW:日志上所有的斜杠(反斜杠)都被过滤掉了。
多谢 咖啡小冰 的提醒。可恶的 wp 插件
@咖啡小冰 :这里教过http://www.appinn.com/ahk-fast-food-restaurant-11-desktop-switch/
我想把AHK做到一起
也就是写到默认的AutoHotKey.ini 里
应该怎么做
@dyseat ,复制,粘贴你会吧?
记得前面加上快捷键比如
^#u::
用这句是 Ctrl + Win + U 来作为快捷键
后面加上
return
sfufoet大虾,我按您说的办法加到AutoHotKey.ini里,不过这样的话那段托盘提示语好像不会自动消失,求解,谢谢!
托盘提示语?把你的 AutoHotKey.ini 发给我看看。我的邮箱是我的 id @gmail.com
明白吧?
想问下这个
IfEqual,a,1,msgbox a
IfEqual,a,1,a++
第一个就没问题,第二个就不行,这是为啥啊
是不是后面只能跟内置的函数啊,运算和自定的函数都不行吗?
很可能是。
[…] sfufoet:AutoHotKey 前几天刚刚升级。最新版请到官方网站下载。 AHK 系列 | 上回 | 来自 appinn.com | 欢迎加入 AutoHotKey Google Group | AHK 快餐店[19] 之 […]
AHK 快餐店[17] 之 秒杀 U 盘
这个下载连接不可用 我非常想用这个软件 就是小众写的
能不能发送到我电子邮件里 或是更新一下这个软件的下载链接。
下载链接是可用地。。。
谢谢啊 是我的网络问题 不好意思!o(∩_∩)o…哈哈
楼主,下载不了了。我在网上也没找到Unplug,能更新一下附件链接或是发一份给我吗?谢谢。
已经发送。文章中的下载链接已经更新。
文件已收到,感谢楼主的热心帮助。
在windows 7下不能用了,谁能修改一下?
@Shoegazer, 收到。我看看能不能解。
@sfufoet, 谢了,这个东西放dock里点一下很方便……办公室经常要用到U盘。
@sfufoet, 请问有解么?
@Shoegazer, 无解。unplug.exe 不支持 win7.抱歉,最近很忙
快速删除u盘的脚本,不需要任何外部程序
;———————快速删除U盘———————————–
;功能:安全删除最后添加的可移动存储设备
#ScrollLock::
Run,%A_WinDir%\system32\control.exe hotplug.dll ; 调用安全删除硬件窗口
WinWait 安全删除硬件
ControlGet, IfStopEnabled, Enabled, ,Button2 ;检查停止按钮是否能按下
If IfStopEnabled { ; 如果能按下,才进行停止设备的操作,否则直接关闭窗口并退出脚本
ControlSend, SysTreeView321, {End} ;定位到最后添加的设备
ControlSend,Button2,s ;按下停止按钮
WinWait 停用硬件设备
ControlSend,Button1,{Enter} ;按下确定
}
WinClose 安全删除硬件
return
;———————快速删除U盘———————————–
@fly2never, 哭~ win7无效~ 无法弹出~