标题: [求助]有能关闭光驱的bat吗
[打印本页]
作者: bbs4033
时间: 2008-1-9 11:51
标题: [求助]有能关闭光驱的bat吗
想实现这么一个想法:
到正点的时候,几点光驱就出来几次,并发出几声滴滴的响声.
谢谢!
作者: chenall
时间: 2008-1-9 12:58
论坛找下,记得之前有谁发过一个开关光驱的命令的.
可以用下.
发出几声滴滴的响声.用echo就可以了.
echo.
作者: fastslz
时间: 2008-1-9 13:06
bat
@echo off
ping/n 2 127.1>nul&cls&set/p= .<nul
ping/n 2 127.1>nul&cls&set/p= . .<nul
ping/n 2 127.1>nul&cls&set/p= . . .<nul
mshta "javascript:new ActiveXObject('WMPlayer.OCX').cdromCollection.Item(0).Eject();window.close();"
vbs
set slz = CreateObject ("Wscript.Shell")
set wmp = CreateObject("WMPlayer.ocx")
set cdrom = wmp.cdromCollection
if cdrom.Count >= 1 then
for i = 0 to cdrom.Count - 1
cdrom.Item(i).Eject
next
end if
slz.Run "sndrec32 /play /close C:\Windows\Media\Notify.wav", 0, True
补充说明双光盘.Item(0)或(1)
set slz = CreateObject ("Wscript.Shell")
set wmp = CreateObject("WMPlayer.ocx")
set cdrom = wmp.cdromCollection
cdrom.Item(0).Eject '或(1).....
slz.Run "sndrec32 /play /close C:\Windows\Media\Notify.wav", 0, True
[
Last edited by fastslz on 2008-1-9 at 01:21 PM ]
作者: fastslz
时间: 2008-1-9 13:11
哦至于整点打开,用at命令(计划任务),因为批处理也好vbs也好一直保留进程的
纯dos建议搜索帖子
作者: chenall
时间: 2008-1-9 13:14
收藏下,mshta
挺方便的.学习了.
作者: bbs4033
时间: 2008-1-12 16:36
谢谢!不过没有达到我想要的目的。我想要的是关闭光驱的bat
作者: zh159
时间: 2008-1-13 00:08
后面一定要延时后 taskkill 掉 mshta.exe 进程,否则每执行一次就会多一个 mshta.exe 进程(不知为何 mshta.exe 进程不能自制动关闭)
而且启动 mshta 要用 start mshta "...... 启动,我的电脑上 mshta "...... 方式就卡住了,不能执行下一步
@echo off
set/p input=选择开[O]/关[C]光驱:
if /i "%input%" == "o" start mshta "javascript:with (new ActiveXObject('WMPlayer.OCX').cdromCollection.Item(0)){Eject();};window.close();"
if /i "%input%" == "c" start mshta "javascript:with (new ActiveXObject('WMPlayer.OCX').cdromCollection.Item(0)){Eject();Eject();};window.close();"
ping -n 3 0 >nul
taskkill /im mshta.exe /f>nul
pause
作者: fastslz
时间: 2008-1-13 00:23
原来加个Eject();就多个一开一关动作,vbs也是想单次Eject没法关闭
我这里不用杀mshta.exe进程的,能自动退出
set slz = CreateObject ("Wscript.Shell")
set wmp = CreateObject("WMPlayer.ocx")
set cdrom = wmp.cdromCollection
if cdrom.Count >= 1 then
for i = 0 to cdrom.Count - 1
cdrom.Item(i).Eject
next
end if
for i = 0 to cdrom.Count - 1
cdrom.Item(i).Eject
next
slz.Run "sndrec32 /play /close C:\Windows\Media\Notify.wav", vbhide
作者: fastslz
时间: 2008-1-13 00:30
晕~看mshta.exe的版本号 7.00.5730.13 (longhorn(wmbla).070711-1130)也就是IE7版本号,居然出现longhorn字样,微软也太水了...
作者: bbs4033
时间: 2008-1-13 21:24
谢谢大家