|
uouobb
初级用户
积分 82
发帖 37
注册 2007-12-15
状态 离线
|
『楼 主』:
如何用命令让手动弹出后的可移动驱动器再次加载
如何用命令让手动弹出后的可移动驱动器再次加载
即是让可移动驱动器再下出现..
原文
@echo off
for /f %%i in ('devcon findall usb* ^|find /i "usb mass storage"') do devcon remove "@%%i"
devcon rescan
pause
怎样分成两部单独运行??
当我手动弹出后,
(或命令: for /f %%i in ('devcon findall usb* ^|find /i "usb mass storage"') do devcon remove "@%%i" )
在需要时,只要"rescan"就可让原先弹出的移动驱动器再加载回来---能显示到盘符了
(不想还要拔USB线再插过)
该如何写??
[ Last edited by uouobb on 2008-1-13 at 08:22 PM ]
|
|
2008-1-13 20:21 |
|
|
uouobb
初级用户
积分 82
发帖 37
注册 2007-12-15
状态 离线
|
『第
2 楼』:
引:
Quote:
Originally posted by ccwan at 2006-12-14 08:36:
是立即识别!!!
昨晚我试了好几次,正确方法:
执行“for /f %%i in ('devcon findall usb* ^|find /i "usb mass storage"') do devcon remove "@%%i"”删除U盘后拔下U盘,再执行“devcon rescan”扫描新硬件,如果一起执行,U盘根本来不及拔下就扫描出来了;当然也可以不用执行“devcon rescan”
问题是弹出后再让它检测回来
不要"立即识别"的
|
|
2008-1-13 20:26 |
|
|
fastslz
铂金会员
DOS一根葱
积分 5493
发帖 2315
注册 2006-5-1 来自 上海
状态 离线
|
『第
3 楼』:
@echo off
color 0e&cls&echo.&echo 正在暂停你的 USB 磁盘设备...
for /f "tokens=1,2 delims=\" %%i in ('devcon find usb\*^|find /i "USB\VID"') do devcon.exe disable "%%i\%%j" >nul 2>nul
color 0a&cls&echo.&echo 任意键启用你的 USB 磁盘设备...&pause>nul
for /f "tokens=1,2 delims=\" %%i in ('devcon find usb\*^|find /i "USB\VID"') do devcon.exe enable "%%i\%%j" >nul 2>nul
pause
|
第一高手 第二高手
我的小站
|
|
2008-1-13 20:35 |
|
|
uouobb
初级用户
积分 82
发帖 37
注册 2007-12-15
状态 离线
|
『第
4 楼』:
这里其中用到了"devcon"
希望能有象在"设备管理"中手动"停用"USB,然后手动再"启用"的,做成批处理
也可以是通过注册表==之类的
我找过``没找著这样的文章..:lol:
|
|
2008-1-13 20:55 |
|
|
uouobb
初级用户
积分 82
发帖 37
注册 2007-12-15
状态 离线
|
『第
5 楼』:
3楼的--谢谢你解答
好象不行??
没反应??
也没弹出呀..
[ Last edited by uouobb on 2008-1-13 at 08:59 PM ]
|
|
2008-1-13 20:57 |
|
|
fastslz
铂金会员
DOS一根葱
积分 5493
发帖 2315
注册 2006-5-1 来自 上海
状态 离线
|
|
2008-1-13 21:05 |
|
|
uouobb
初级用户
积分 82
发帖 37
注册 2007-12-15
状态 离线
|
『第
7 楼』:
6楼...我没看那些"冗长"的处理哦!
你弄那段检测到已有"可移动驱动器"
只需运行就可以再显示的 贴上来好吗??
|
|
2008-1-13 21:11 |
|
|
uouobb
初级用户
积分 82
发帖 37
注册 2007-12-15
状态 离线
|
『第
8 楼』:
for /f "tokens=1,2 delims=\" %%i in ('devcon find usb\*^|find /i "USB\VID"') do devcon.exe enable "%%i\%%j" >nul 2>nul
没能出来..
不用启用到哦
|
|
2008-1-13 21:13 |
|
|
fastslz
铂金会员
DOS一根葱
积分 5493
发帖 2315
注册 2006-5-1 来自 上海
状态 离线
|
『第
9 楼』:
我给代码当然能禁用能启用,你自己想怎么用就怎么改
如果运行前检测是否存在USB磁盘见代码
for /f "tokens=1,2 delims=\" %%i in ('devcon find usb\*^|find /i "USB\VID"') do set USB=%%i\%%j
if not defined USB echo USB 磁盘设备未发现
|
第一高手 第二高手
我的小站
|
|
2008-1-13 21:32 |
|
|
uouobb
初级用户
积分 82
发帖 37
注册 2007-12-15
状态 离线
|
『第
10 楼』:
噢,我的天哪
还是不会用你给的代码哦
不知道怎么的运行了没点动作...我的批处理不好@@
这个
@echo off
for /f %%i in ('devcon findall usb* ^|find /i "usb mass storage"') do devcon remove "@%%i"
devcon rescan
pause
易懂
但不能"remove"后
在没拔出断开USB线时,过一段时间后再单独用"rescan"加载就显示回"可移动驱动器"来
看来还是找一些简单的类似"设备管理器"里手动"停用""启用"的,是是批处理的
|
|
2008-1-13 22:04 |
|
|
uouobb
初级用户
积分 82
发帖 37
注册 2007-12-15
状态 离线
|
『第
11 楼』:
fastslz~~
哦NO
fastslz
是不停用哪个"人体学输入设备"的
而是"磁盘驱动器" 里的
但我还是不会用decvon /? 的命令(用法)
|
|
2008-1-13 22:07 |
|
|
uouobb
初级用户
积分 82
发帖 37
注册 2007-12-15
状态 离线
|
『第
12 楼』:
谢谢了``大概我能解决了
类似的停用方法..
只是find 不同
|
|
2008-1-13 22:12 |
|
|
fastslz
铂金会员
DOS一根葱
积分 5493
发帖 2315
注册 2006-5-1 来自 上海
状态 离线
|
『第
13 楼』:
devcon.exe disable 不就是"设备管理器"里手动"停用"
devcon.exe enable 不就是"设备管理器"里手动"启用"
不是所有是可移动磁盘都是这个名字usb mass storage所以我用find /i "USB\VID"
@echo off
for /f %%i in ('devcon findall usb* ^|find /i "usb mass storage"') do devcon remove "@%%i"
这个是不完整的for语句 remove移除设备
如果代码不好用devcon find usb\*>id.txt再把id.txt内容贴上来
|
第一高手 第二高手
我的小站
|
|
2008-1-13 22:18 |
|
|
uouobb
初级用户
积分 82
发帖 37
注册 2007-12-15
状态 离线
|
『第
14 楼』:
最后是---
C:\Documents and Settings\Administrator>devcon enable "@USBSTOR\DISK&VEN_SUNPLUS
&PROD_MULTIMEDIA-DISK&REV_1.00\01.00.00&0:"
No devices enabled.
没有可用的devices
|
|
2008-1-13 23:23 |
|
|
fastslz
铂金会员
DOS一根葱
积分 5493
发帖 2315
注册 2006-5-1 来自 上海
状态 离线
|
『第
15 楼』:
devcon enable "@USBSTOR\DISK&VEN_SUNPLUS&PROD_MULTIMEDIA-DISK&REV_1.00\01.00.00&0:"
这个肯定不行的
你暂时用这个吧,只是部分mp3和数码相机的可移动磁盘不管用,设备的Hardware ID范围太大了找不出规律不好筛选
@echo off
devcon.exe>nul 2>nul
if %errorlevel%==9009 (CLS&&echo.&&COLOR 0E&&echo 本脚本需要微软 DevCon.exe 命令行实用工具支持&&ping/n 5 127.1>nul&&exit/b)
for /f "tokens=1,2 delims=\" %%i in ('devcon find usb\*^|find /i "Mass Storage"') do set "USBHDID=%%i\%%j"
if "%USBHDID%"=="" color 0b&cls&echo.&echo USB 磁盘设备未发现!&ping/n 5 127.0.1>nul&exit
color 0e&cls&echo.&echo 正在禁用你的 USB 磁盘设备...
devcon.exe disable "%USBHDID%" >nul 2>nul
color 0b&cls&echo.&echo USB 磁盘设备已禁用!&ping/n 3 127.0.1>nul
color 0a&cls&echo.&echo 任意键启用你的 USB 磁盘设备...&pause>nul
devcon.exe enable "%USBHDID%" >nul 2>nul
color 0e&cls&echo.&echo 全部OK!待退出...&ping/n 4 127.0.1>nul
|
第一高手 第二高手
我的小站
|
|
2008-1-13 23:35 |
|