无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 4724|回复: 15
打印 上一主题 下一主题

求教命令行启用(禁用)硬件设备的方法[P处理高手请进]

  [复制链接]
跳转到指定楼层
1#
发表于 2007-7-10 20:22:23 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如题,谢谢先了

[ 本帖最后由 沙漠之子 于 2007-7-11 07:41 AM 编辑 ]
2#
发表于 2007-7-10 20:48:12 | 只看该作者
devcon 命令

C:\Documents and Settings\Administrator>devcon help disable
devcon [-r] disable <id> [<id>...]
devcon [-r] disable =<class> [<id>...]
Disable devices that match the specific hardware or instance ID.
This command will only work for local machine.
Specify -r to reboot automatically if needed.
Examples of <id> are:
*                  - All devices (not recommended)
ISAPNP\PNP0501     - Hardware ID
*PNP*              - Hardware ID with wildcards (* matches anything)
@ISAPNP\*\*        - Instance ID with wildcards (@ prefixes instance ID)
<class> is a setup class name as obtained from the classes command.
Devices are disabled if possible.
回复

使用道具 举报

3#
发表于 2007-7-10 20:49:36 | 只看该作者
Hardware ID
在设备管理器里面也可以看到的
回复

使用道具 举报

4#
 楼主| 发表于 2007-7-10 22:55:31 | 只看该作者
那又如何用命令行知道声卡的硬件id呢

能否写个p处理文件上吗
回复

使用道具 举报

5#
发表于 2007-7-10 23:01:50 | 只看该作者
三月版PE声卡是在桌面加载的,需要加载声卡后才有办法找到它的ID
回复

使用道具 举报

6#
 楼主| 发表于 2007-7-10 23:05:03 | 只看该作者
当然是声卡已经加载了 才........
回复

使用道具 举报

7#
 楼主| 发表于 2007-7-10 23:09:32 | 只看该作者
本人认为应从注册表入手
比如我的声卡注册表
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\DeviceClasses\{6994AD04-93EF-11D0-A3CC-00A0C9223196}\##?#PCI#VEN_8086&DEV_266E&SUBSYS_006A1025&REV_03#3&B1BFB68&0&F2#{6994ad04-93ef-11d0-a3cc-00a0c9223196}

声卡ID
PCI\VEN_8086&DEV_266E&SUBSYS_006A1025&REV_03

也可截取第一个&和第二个&之间的设备代码 DEV_266E

devcon disable *DEV_266E* 来禁用声卡

但是如何实现,还请各位大侠赐教

首先找出
REG QUERY HKLM\SYSTEM\CurrentControlSet\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}输出中所有含有##?#PCI#的项再从中截取设备代码

[ 本帖最后由 沙漠之子 于 2007-7-10 11:28 PM 编辑 ]
回复

使用道具 举报

8#
发表于 2007-7-10 23:26:25 | 只看该作者
在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\pci下面
找包含"Class"="media" (REG_SZ)
         "DeviceDesc"包含"Audio" (REG_SZ)
的项,读取它的"HardwareID"的值就是了
查找注册表的命令是REG Query,详细帮助参照我的帖子http://bbs.wuyou.net/forum.php?mod=viewthread&tid=109408&extra=page%3D2
(USB声卡没用过,可能不在PCI下)

[ 本帖最后由 netwinxp 于 2007-7-10 11:27 PM 编辑 ]
回复

使用道具 举报

9#
 楼主| 发表于 2007-7-10 23:31:30 | 只看该作者
很奇怪我这没有HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\pci这项的说
回复

使用道具 举报

10#
发表于 2007-7-11 00:18:41 | 只看该作者
是HKLM\SYSTEM\CurrentControlSet\Enum\pci
不好意思,我指错地方了,HardWareID里面可能有多项,任意读取一项提取&DEV....&就可以了(这一部分都相同)

[ 本帖最后由 netwinxp 于 2007-7-11 12:22 AM 编辑 ]
回复

使用道具 举报

11#
 楼主| 发表于 2007-7-11 01:18:49 | 只看该作者
我认为从HKLM\SYSTEM\CurrentControlSet\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}读取声卡信息,较为保险的说
回复

使用道具 举报

12#
发表于 2007-7-11 02:49:46 | 只看该作者
你那个是网络用的,别搞错了:L
下面是XP提取的
========================

Windows Registry Editor Version 5.00


[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}\Descriptions]
"NVIDIA nForce Networking Controller"=hex(7):31,00,00,00,00,00
"数据包计划程序微型端口"=hex(7):31,00,00,00,00,00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}\{7E2D5705-B9FF-4050-A228-1FA3EC6A24A4}]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}\{7E2D5705-B9FF-4050-A228-1FA3EC6A24A4}\Connection]
"PnpInstanceID"="PCI\\VEN_10DE&DEV_0066&SUBSYS_10001695&REV_A1\\3&13C0B0C5&0&20"
"MediaSubType"=dword:00000001
"Name"="本地连接"
"ShowIcon"=dword:00000000
"IpCheckingEnabled"=dword:00000000

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network\{4D36E973-E325-11CE-BFC1-08002BE10318}]
@="网络客户"
"Class"="NetClient"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network\{4D36E973-E325-11CE-BFC1-08002BE10318}\{1FB84AF5-FCD2-44E7-A511-6F6598DE41AE}]
"Characteristics"=dword:00000080
"InfPath"="netmscli.inf"
"InfSection"="MSClient.ndi"
"Description"="Microsoft 网络客户端"
"ComponentId"="ms_msclient"
"PrintProviderName"="LanMan Print Services"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Network\{4D36E974-E325-11CE-BFC1-08002BE10318}]
@="网络服务"
"Class"="NetService"
回复

使用道具 举报

13#
 楼主| 发表于 2007-7-11 03:01:34 | 只看该作者
对.我是要对网卡和声卡设备进行操作的说

大大呀,还没睡
回复

使用道具 举报

14#
发表于 2007-7-11 03:12:37 | 只看该作者
准备睡了,禁用?它们都是外置的,不启用不就没事了?:o
回复

使用道具 举报

15#
发表于 2007-7-11 03:18:25 | 只看该作者
还是在HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Emun\pci下面
改成找包含"Class"="Net" (REG_SZ)
         "DeviceDesc"包含"Network" (REG_SZ)
的项,读取它的"HardwareID"的值
回复

使用道具 举报

16#
 楼主| 发表于 2007-7-11 07:39:04 | 只看该作者
我想用以下代码截取 id号 但是运行结果有问题 不知错在哪

求p处理高手帮忙
  1. for /f "skip=9"  %I in ('REG QUERY HKLM\SYSTEM\CurrentControlSet\Control\Network\{4D36E972-E325-11CE-BFC1-08002BE10318}') do (
  2. %I
  3. for /f "tokens=3* skip=4"  %k in ('REG QUERY %I\Connection /v PnpInstanceID') do (
  4. %k
  5. set t=%k && set id=%t:~13,8%
  6. )
  7. set id
  8. pause
  9. )
复制代码
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2025-2-2 05:49

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表