如何只禁止USB存储设备在电脑上使用(如U盘闪盘之类)

    公司电脑的文件一般都通过局域网来传送,几乎是不需要使用U盘的,而很多人将手机,MP3,MP4,闪存盘在公司使用,甚至传播病毒等,考虑到这些危害,决定屏蔽掉USB存储设备的使用,可是公司还要使用USB打印机和USB键盘和USB鼠标,如何只禁止使用US存储设备呢?经过大量搜索,才找到了一个简单的方法,请将以下内容复制到记事本,然后保存在桌面上,文件名为usb.bat然后在桌面上找到它,双击,即可将电脑的USB存储设备功能禁止,而不会影响到其他USB设备的正常运行

@echo off@echo off
cacls %SystemRoot%\inf\usbstor.inf /e /c /d system
cacls %SystemRoot%\inf\usbstor.inf /e /c /d "power users"
cacls %SystemRoot%\inf\usbstor.inf /e /c /d users
cacls %SystemRoot%\inf\usbstor.inf /r "everyone" /e
cacls %SystemRoot%\inf\usbstor.PNF /e /c /d system
cacls %SystemRoot%\inf\usbstor.PNF /e /c /d "power users"
cacls %SystemRoot%\inf\usbstor.PNF /e /c /d users
cacls %SystemRoot%\inf\usbstor.PNF /r "everyone" /e
cls
@echo Windows Registry Editor Version 5.00>>%temp%\usb_temp.reg
@echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR]>>%temp%\usb_temp.reg
@echo "Type"=dword:00000001>>%temp%\usb_temp.reg
@echo "Start"=dword:00000004>>%temp%\usb_temp.reg
@echo "ErrorControl"=dword:00000001>>%temp%\usb_temp.reg
@echo "ImagePath"=hex(2):73,00,79,00,73,00,74,00,65,00,6d,00,33,00,32,00,5c,00,44,00,\>>%temp%\usb_temp.reg
@echo  52,00,49,00,56,00,45,00,52,00,53,00,5c,00,55,00,53,00,42,00,53,00,54,00,4f,\>>%temp%\usb_temp.reg
@echo   00,52,00,2e,00,53,00,59,00,53,00,00,00>>%temp%\usb_temp.reg
@echo "DisplayName"="USB Mass Storage Driver">>%temp%\usb_temp.reg
@echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR\Security]>>%temp%\usb_temp.reg
@echo "Security"=hex:01,00,14,80,90,00,00,00,9c,00,00,00,14,00,00,00,30,00,00,00,02,\>>%temp%\usb_temp.reg
@echo   00,1c,00,01,00,00,00,02,80,14,00,ff,01,0f,00,01,01,00,00,00,00,00,01,00,00,\>>%temp%\usb_temp.reg
@echo   00,00,02,00,60,00,04,00,00,00,00,00,14,00,fd,01,02,00,01,01,00,00,00,00,00,\>>%temp%\usb_temp.reg
@echo   05,12,00,00,00,00,00,18,00,ff,01,0f,00,01,02,00,00,00,00,00,05,20,00,00,00,\>>%temp%\usb_temp.reg
@echo   20,02,00,00,00,00,14,00,8d,01,02,00,01,01,00,00,00,00,00,05,0b,00,00,00,00,\>>%temp%\usb_temp.reg
@echo   00,18,00,fd,01,02,00,01,02,00,00,00,00,00,05,20,00,00,00,23,02,00,00,01,01,\>>%temp%\usb_temp.reg
@echo   00,00,00,00,00,05,12,00,00,00,01,01,00,00,00,00,00,05,12,00,00,00>>%temp%\usb_temp.reg
@echo [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR\Enum]>>%temp%\usb_temp.reg
@echo "Count"=dword:00000000>>%temp%\usb_temp.reg
@echo "NextInstance"=dword:00000000>>%temp%\usb_temp.reg
cls
regedit /s %temp%\usb_temp.reg
del %temp%\usb_temp.reg
@echo off
exit

Dos命令Bootcfg的详细命令格式使用方法

BOOTCFG /parameter [arguments]

描述:
    此命令行工具可以用来在 BOOT.INI 文件中配置,查询,
    更改或删除启动项目设置。

参数列表:
    /Copy       生成一个现有的启动项目 [operating systems] 部分的副本,
                您可以在上面添加操作系统选项。

    /Delete     在 BOOT.INI 文件的 [operating systems] 部分
                删除一个现有的启动项目。
                您必须指定要删除的项目号。

    /Query      显示当前启动项目和它们的设置。

    /Raw        允许用户为特定的启动项目指定
                1394 端口调试。

    /Timeout    允许用户更改超时值。

    /Default    允许用户更改默认启动项目。

    /EMS        允许用户为启动项目的无头支持
                配置 -/redirect 开关。

    /Debug      允许用户为特定的启动项目指定
                远程调试的端口和波特率。

    /Addsw      允许用户为特定的启动项目添加
                预定义开关。

    /Rmsw       允许用户为特定的启动项目删除
                预定义开关。

    /Dbg1394    允许用户为特定的启动项目配置
                1394 端口调试。

    /?          显示帮助/用法。

示例:
    BOOTCFG /Copy /?
    BOOTCFG /Delete /?
    BOOTCFG /Query /?
    BOOTCFG /Raw /?
    BOOTCFG /Timeout /?
    BOOTCFG /EMS /?
    BOOTCFG /Debug /?
    BOOTCFG /Addsw /?
    BOOTCFG /Rmsw /?
    BOOTCFG /Dbg1394 /?
    BOOTCFG /Default /?
    BOOTCFG /?

BOOTCFG /Copy [/S system [/U user [/P password]]]
            [/D description] /ID bootid

描述:
    生成一个现有启动项目的副本。

参数列表:
    /S     system            指定要连接到的远程系统。

    /U     [domain\]user     指定用户上下文,命令在此上下
                             文中执行。

    /P     password          为给定用户上下文
                             指定密码。

    /D     description       生成的操作系统项目的描述。

    /ID    bootid            指定需要生成副本的 BOOT.INI
                             指定要添加 OS 选项的
                             部分的启动项目 ID。

    /?                       显示帮助/用法。

示例:
    BOOTCFG /Copy /D  "Windows XP with Debug" /ID 1
    BOOTCFG /Copy /S system /U user  /D "Windows XP" /ID 3
    BOOTCFG /Copy /D "Windows XP /Crashdebug" /ID 2
BOOTCFG /Delete [/S system [/U user [/P password]]] /ID bootid

描述:
    在 boot.ini 文件的 [operating systems] 部分
    删除一个现有的启动项目。

参数列表:
    /S      system           指定要连接到的远程系统。

    /U      [domain\]user    指定用户上下文,命令在此上下
                             文中执行。

    /P      password         为给定用户上下文
                             指定密码。

    /ID     bootid           指定在 boot.ini 文件的
                             [operating systems] 部分
                             需要删除的启动项目 ID。

    /?                       显示帮助/用法。

示例:
    BOOTCFG /Delete /ID 2
    BOOTCFG /Delete /S system /U user /P password /ID 3
    BOOTCFG /Delete /S system /U user /P password /ID 2

BOOTCFG /Query [/S system [/U user [/P password]]]

描述:
    显示当前的启动项目文件设置。

参数列表:
    /S     system            指定要连接到的远程系统。

    /U     [domain\]user     指定用户上下文,命令在此上下
                             文中执行。

    /P     password          为给定用户上下文
                             指定密码。

    /?                       显示帮助/用法。

示例:
    BOOTCFG /Query
    BOOTCFG /Query /S system /U user /P password
    BOOTCFG /Query /S ipaddress /U user /P password

BOOTCFG /Raw /?

BOOTCFG /Raw osoptions [/A] [/S system [/U user [/P password]]]
            /ID bootid

描述:
    允许用户为启动项目指定 OS 加载选项。

参数列表:
    /S      system           指定要连接到的远程系统。

    /U      [domain\]user    指定用户上下文,命令在此上下
                             文中执行。

    /P      password         为给定用户上下文
                             指定密码。

    /ID     bootid           指定要在 BOOT.INI 文件的
                             指定要添加 OS 选项的
                             启动项目 ID。

    /RAW    osoptions        为一个启动项目指定操作系统选项。
                             前面的 OS 选项将被这些覆盖。

    /A                       指定由 /RAW 开关输入的
                             操作系统选项将附加到
                             已有的操作系统选项。

    /?                       显示帮助/用法。

示例:
    BOOTCFG /Raw "/DEBUG /SOS" /A /ID 2
    BOOTCFG /Raw "/3GB" /A /ID 2
    BOOTCFG /Raw "/CRASHDEBUG" /S system /U user /P password /ID 2

BOOTCFG /Timeout /?

BOOTCFG /Timeout value [/S system [/U user [/P password]]]

描述:
    允许用户更改 OS 超时值。
    有限范围在 0 和 999 之间。

参数列表:
    /S        system         指定要连接到的远程系统。

    /U        [domain\]user  指定用户上下文,命令在此上下
                             文中执行。

    /P        password       为给定用户上下文
                             指定密码。

    /TIMEOUT  value          指定在加载默认 OS 之前
                             以秒计算的时间。

    /?                       显示帮助/用法。

示例:
    BOOTCFG /Timeout 30
    BOOTCFG /Timeout 50 /S system /U domain\user /P password

BOOTCFG /EMS value [/S system [/U user [/P password]]]
                     [/PORT port] [/BAUD baudrate] [/ID bootid]

描述:
    允许用户添中或更改(编辑) EMS 无头重定向
    设置。

参数列表:
    value    default         为 EMS 重定向指定一组
                             有效值 - ON, OFF, EDIT。
                             注意:EDIT 用于更改当前设置。

    /S       system          指定要连接到的远程系统。

    /U       [domain\]user   指定用户上下文,命令在此上下
                             文中执行。

    /P       password        为给定用户上下文
                             指定密码。

    /PORT    port            指定用于重定向的 COM 端口。
                             有效端口是 COM1, COM2, COM3
                             COM4 或 BIOSSET(EMS 使用 BIOS 设置)。

    /BAUD    baudrate        指定用于重定向的波特率
                             有效波特率是 9600,
                             19200, 57600, 115200.

    /ID      bootid          在 BOOT.INI 文件的 [operating systems] 部分
                             指定要添加 OS 选项的启动项目 ID。
                             当 EMS 值设置为 ON 或 OFF 时
                             需要该 ID 项目。

    /?                       显示帮助/用法。

示例:
    BOOTCFG /EMS ON /PORT COM1 /BAUD 19200 /ID 2
    BOOTCFG /EMS ON /PORT BIOSSET  /ID 3
    BOOTCFG /EMS OFF /S system /ID 2
    BOOTCFG /EMS EDIT /PORT com2 /BAUD 115200
    BOOTCFG /EMS OFF /S system /U domain\user /P password /ID 2

BOOTCFG /Debug /?

BOOTCFG /Debug value [/S system [/U user [/P password]]]
                       [/PORT port [/BAUD baudrate]] /ID bootid

描述:
    允许用户为特定的 OS 项目添加
    或更改(编辑)调试设置。

参数列表:
    value    default         指定一组有效的调试
                             值 - ON, OFF, EDIT。

    /S       system          指定要连接到的远程系统。

    /U       [domain\]user   指定用户上下文,命令在此上下
                             文中执行。

    /P       password        为给定用户上下文
                             指定密码。

    /PORT    port            为连接到用于调试的远程机器
                             指定 COM 端口。有效的端口是
                             COM1, COM2, COM3, COM4。

    /BAUD    baudrate        指定用于重定向的波特率
                             调试有效的波特率是 9600, 19200,
                             38400, 57600, 115200。

    /ID      bootid          在 BOOT.INI 文件的 [operating systems] 部分
                             指定要添加 OS 选项的
                             启动项目 ID。

    /?                       显示帮助/用法。

示例:
    BOOTCFG /Debug ON /PORT COM1 /ID 2
    BOOTCFG /Debug OFF /S system /U user /ID 2
    BOOTCFG /Debug EDIT /PORT com2 /BAUD 19200 /ID 2
    BOOTCFG /Debug OFF /S system /U domain\user /P password /ID 2

BOOTCFG /Addsw /?

BOOTCFG /Addsw [/S system [/U user [/P password]]]
             { [/MM val] [/BV] [/SO] [/NG] } /ID bootid

描述:
    允许用户为特定 OS 项目添加开关。

参数列表:
    /S     system          指定要连接到的远程系统。

    /U     [domain\]user   指定用户上下文,命令在此上下
                           文中执行。

    /P     password        指定给定用户上下文
                           的密码。

    /MM    value           指定要添加 /maxmem 开关,
                           该开关指明 OS 的最大可用
                           RAM(MB)数量。

    /BV                    指定要添加 /basevideo 开关,
                           该开关指明 OS 为安装的显示驱动程序
                           使用标准 VGA 模式。

    /SO                    指定要添加 /sos 开关,
                           该开关用于在加载时显示
                           每个设备驱动程序的名称。

    /NG                    指定要添加 /noguiboot 开关,
                           该开关在 CTRL+ALT+DEL 登录提示出现之前
                           禁用 Whistler 进度栏位图。

    /ID    bootid          指定在 BOOT.INI 文件的
                           [operating systems] 部分要删除 OS 选项
                           行添加 OS 选项。

    /?                     显示帮助/用法。

示例:
    BOOTCFG /Addsw /MM 64 /ID 2
    BOOTCFG /Addsw /SO /ID 3
    BOOTCFG /Addsw /SO /NG /S system /U domain\user /ID 2
    BOOTCFG /Addsw /NG /ID 2
    BOOTCFG /Addsw /MM 96 /NG /S system /U user /P password /ID 2
BOOTCFG /Rmsw /?

BOOTCFG /Rmsw [/S system [/U user [/P password]]]
                  { [/MM] [/BV] [/SO] [/NG] } /ID bootid

描述:
    允许用户从一个 OS 项目删除开关。

参数列表:
    /S     system          指定要连接到的远程系统。

    /U     [domain\]user   指定用户上下文,命令在此上下
                           文中执行。

    /P     password        指定给定用户上下文
                           的密码。

    /MM                    指定 Whistler 可以使用的
                           随机存取内存的最大数量。

    /BV                    指定删除 /basevideo 开关,
                           该开关指明 OS 为安装的显示驱动程序
                           使用标准 VGA 模式。

    /SO                    指定删除 /sos 开关,
                           该开关用于在加载时显示每个设备
                           驱动程序的名称。

    /NG                    指定删除 /noguiboot 开关,
                           该开关在 CTRL+ALT+DEL 登录提示出现之前
                           禁用 Whistler 进度栏位图。

    /ID    bootid          指定在 BOOT.INI 文件的
                           [operating systems] 部分要删除 OS 选项
                           启动项目 ID。

    /?                     显示帮助/用法。

示例:
    BOOTCFG /Rmsw /MM /ID 2
    BOOTCFG /Rmsw /SO /ID 3
    BOOTCFG /Rmsw /SO /NG /S system /U user /ID 2
    BOOTCFG /Rmsw /NG /ID 2
    BOOTCFG /Rmsw /MM /NG /S system /U domain\user /P password /ID 2

BOOTCFG /Dbg1394 /?

BOOTCFG /Dbg1394 value [/S system [/U user [/P password]]]
                  [/CH channel] /ID bootid

描述:
    允许用户配置 1394 端口调试。

参数列表:
    value  default         指定 Dbg1394 开关值的
                           有效集。有效值: ON, OFF。

    /S     system          指定要连接到的远程系统。

    /U     [domain\]user   指定用户上下文,命令在此上下
                           文中执行。

    /P     password        指定给定用户上下文
                           的密码。

    /CH    channel         指定通道。有效值: 1 到 64。

    /ID    bootid          指定在 BOOT.INI 文件的
                           [operating systems] 部分要删除 OS 选项
                           的启动项目 ID。

    /?                     显示帮助/用法。

示例:
    BOOTCFG /Dbg1394 on  /ID 2
    BOOTCFG /Dbg1394 on /CH 30  /ID 3
    BOOTCFG /Dbg1394 on /CH 20 /S system /U user /ID 2
    BOOTCFG /Dbg1394 off /ID 2
    BOOTCFG /Dbg1394 off /S system /U domain\user /P password /ID 2

BOOTCFG /Default /?

BOOTCFG /Default [/S system [/U user [/P password]]] /ID bootid

描述:
    允许用户更改默认 OS 项目。

参数列表:
    /S      system           指定要连接到的远程系统。

    /U      [domain\]user    指定用户上下文,命令在此上下
                             文中执行。

    /P      password         为给定用户上下文
                             指定密码。

    /ID     bootid           指定要在 BOOT.INI 文件的
                             指定要添加 OS 选项的
                             默认操作系统的启动项目 ID。

    /?                       显示帮助/用法。

示例:
    BOOTCFG /Default /ID 2
    BOOTCFG /Default /S system /U domain\user /P password /ID 2

Dos中的Smartdrv命令有什么作用

  现象:在许多有关Windows XP安装的介绍文章中都提到:“如果在DOS下安装Windows XP非常慢,肯定是安装前未运行Smartdrv.exe。我想问这个Smartdrv.exe文件有什么饔?具体如何使用?

  Smartdrv.exe这个文件对于熟悉DOS的朋友肯定很清楚,主要作用是为磁盘文件读写增加高速缓存。大家知道内存的读写速度比磁盘高得多,如果将内存作为磁盘读写的高速缓存可以有效提高系统运行效率。Smartdrv.exe这个文件在Windows各个版本的安装光盘中或是硬盘上的Windows/command/里都有,只有几十KB,把这个文件复制到软盘下,启动系统后直接运行这个程序(可以不加参数,该程序会自动根据内存大小分配适当的内存空间作为高速缓存),再安装Windows XP即可。另外提醒大家,这个程序在安装完Windows后,不要运行,否则Windows可用内存将减少。

Dos命令提示符软件中的一些常用快捷键

    在Windows系统中的DOS命令提示符软件里其实有许多好用的快捷键,可以让使用效率变得更高,从而节约您的大量时间

    Ctrl+H:删除光标左边的一个字符;
   
    ESC:清除当前命令行;

    Ctrl+M:表示回车确认键;

    Alt+F7:清除所有曾经输入的命令历史记录;

    Alt+PrintScreen:截取屏幕上当前命令窗里的内容。
   
    F7:显示命令历史记录,以图形列表窗的形式给出所有曾经输入的命令,并可用上下箭头键选择再次执行该命令。
   
    F8:搜索命令的历史记录,循环显示所有曾经输入的命令,直到按下回车键为止;
   
    F9:按编号选择命令,以图形对话框方式要求您输入命令所对应的编号(从0开始),并将该命令显示在屏幕上;
   

   
    Ctrl+C Ctrl+Break,强行中止命令执行;
   

    有了这些快捷键,是不是让DOS命令提示符软件变得越来越简单而实用了呢?
   
 

教你改变DOS命令提示符的颜色和风格

    无论从Windows 95到Windows Vista,系统中带的DOS命令提示符软件都是黑白画面,在这个五光十色的年代,这样的软件实在有点让人感觉没有新鲜感,下面教大家几个自定义DOS命令提示符软件的小技巧。
  
第一个技巧是教大家改变DOS命令提示符的标题,在开始菜单点运行,输入“CMD /k TITLE标题文字”可以得到自定义标题效果
  
第二个技巧可以改变命令符:在开始菜单点运行,输入“CMD /K PROMPT [text]”(text为新的命令提示符),
  
第三个技巧可以改变前景色和背景色:CMD /t:gf(g是指定背景色的十六进制数字,常用的颜色有以下值:0 黑色,1蓝色,2 绿色,3 浅绿色,4红色,5紫色,6黄色,7白色,8灰色,9浅蓝,A浅绿,B浅蓝色,C浅红色,D浅紫色,E浅黄色,F亮白色。

经过小小的修改,死板的DOS命令符是不是也变得有些新鲜了呢?

使用Windows中的DOS命令提示符的两则技巧

    虽然命令行我们很少用到,但很多管理人员还是在使用着,因为某些时候它能带给我们更简单更多的方便,在这里,推荐几则技巧给大家使用。

技巧一:显示曾使用过的命令

  此外,在命令提示字符窗口下,除了按键盘的“↑”或“↓”光标键可以把之前输入过的指令呼叫出来以外,其实按一下“F7”键,还会弹出一个选单,把你输入过的指令通通罗列出来,选择起来更为方便。
技巧二:让TAB键来快速输入文件夹的名字

  第一个好用的快捷键是“Tab”键。在Windows XP中调出命令提示符窗口,你试试按几次“Tab”键,此时当前文件夹下的文件名会依序一个一个地显示出来,文件秀完之后会接着显示子文件夹的名称。
  根据“姓氏”找文件夹

  如果我们要切换到某个以字母D开头名称的文件夹,也可以先输入“cd d”(即cd后面空一格,再打上文件夹开头的字母),此时再按“Tab”键,就只会轮流秀出以字母D开头的文件夹名称,这样可以快一点找到要找的目标。
  如果使用“Shift+Tab”快捷键,则会以相反的顺序来显示文件夹名称。

简单利用DOS命令批处理文件清除系统垃圾文件的方法

    其实在Windows安装和使用过程中都会产生一定的垃圾文件,包括程序临时文件(如:*.tmp、*._mp),系统以及软件的日志文件(*.log)、临时帮助文件(*.gid)、磁盘检查文件(*.chk)、临时备份文件(如:*.old、*.bak)以及其他临时文件。特别
是如果一段时间不清理IE的临时文件夹“Temporary Internet Files”,其中的缓存文件有时会占用上百兆甚至几百兆的空间。这些垃圾文件不仅仅浪费了宝贵的磁盘空间,严重时还会使系统运行速度变慢甚至撑满系统盘。这点相信你肯定忍受不了吧!所以应及时清理系统的垃圾文件的淤塞,轻松流畅上网!朋友来吧,现在就让我们一起来快速清除系统垃圾吧!!

其实步骤很简单,也就两步操作就可以搞定!

在桌面的空白处单击鼠标右键,选择“新建”,选择“文本文件”,把下面的字复制进去,点“另存为”,把文件名定为“清除垃圾文件.bat”就完成,记住最后面一定要是.bat,前面的无所谓。你的垃圾清除器就这样制作成功了!双击它就能很快地清理垃圾文件,大约一分钟不到。以后只要双击运行该文件,当屏幕提示“清除系统垃圾完成!”即完成,系统垃圾也离你而去了!

下面就是要复制的内容
@echo off

echo 正在为您清除系统垃圾文件和临时文件,请稍等......

del /f /s /q %systemdrive%\*._mp

del /f /s /q %systemdrive%\*.tmp

del /f /s /q %systemdrive%\*.gid

del /f /s /q %systemdrive%\*.log

del /f /s /q %systemdrive%\*.chk

del /f /s /q %systemdrive%\*.gid

del /f /s /q %systemdrive%\*.chk

del /f /s /q %systemdrive%\*.old

del /f /s /q %systemdrive%\recycled\*.*

del /f /s /q %windir%\prefetch\*.*

del /f /s /q %windir%\*.bak

rd /s /q %windir%\temp & md %windir%\temp

del /f /s /q %windir%\prefetch\*.*

rd /s /q %windir%\temp & md %windir%\temp

del /f /s /q "%userprofile%\Local Settings\Temporary Internet Files\*.*"

del /f /q %userprofile%\cookies\*.*

del /f /q %userprofile%\recent\*.*

del /f /s /q "%userprofile%\Local Settings\Temporary Internet Files\*.*"

del /f /s /q "%userprofile%\Local Settings\Temp\*.*"

del /f /s /q "%userprofile%\recent\*.*"

echo 清除系统垃圾完成!

echo. & pause

让你的QQ可以和其他任何人聊天(说话)

在附件里打开记事本,将以下内容复制进去,然后保存到桌面,文件设置为QQ.bat即可,然后在桌面双击它按提示就可以和任何人聊天了!

@echo off
title QQ强制聊天工具
color 0a
echo.
echo.
echo. 本程序用于与任意Q号聊天,也可以用于骚扰把你加入黑名单的Q友…………
echo.
echo.
echo.
echo.
echo.
echo. www.x2009.net欢迎您的光临!
echo.
echo.
echo.
echo.
echo.
echo. 请先打开QQ!否则本程序无效!!!
echo.
echo.
echo.
echo.
echo.
echo.
echo.
pause
echo.
echo.
echo.
echo.
:song
echo.
echo.
echo.
echo.
echo.
Set /p num=请输入你想要强制聊天的人的QQ号码:
If /I "%num%"=="n" Exit
start tencent://Message/?Uin=%num%
cls
echo. 按任意键选择另一个人
echo.
echo.
pause
echo.
Goto song

Dos命令Sc的命令格式和使用方法

1.SC的基本格式:
sc <server> [command] [service name] <option1> <option2>
这是他的基本格式,在管理远程主机时只需在SC后加上\\IP地址
sc \\192.168.1.1 query eventlog

2.查看一个服务的运行状态
sc query 服务名

C:\tools>sc query eventlog

SERVICE_NAME: eventlog //显示的服务名
TYPE : 20 WIN32_SHARE_PROCESS
STATE : 4 RUNNING //运行的状态
(NOT_STOPPABLE,NOT_PAUSABLE,ACCEPTS_SHUTDOWN) //下面讲
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
运行的状态有: stopped(停止) /running(运行) /start_pending(等待启动)等状态
(NOT_STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN)
这个信息显示此服务可以接受的控制命令,上面这个就是//不能停止//不能暂停//接受关机

3.查看一个服务的配置信息
sc qc 服务名

C:\tools>sc qc eventlog
[SC] GetServiceConfig SUCCESS

SERVICE_NAME: eventlog
TYPE : 20 WIN32_SHARE_PROCESS
START_TYPE : 2 AUTO_START //启动类别
ERROR_CONTROL : 1 NORMAL
BINARY_PATH_NAME : C:\WINNT\system32\services.exe //启动文件路径
LOAD_ORDER_GROUP : Event log
TAG : 0
DISPLAY_NAME : Event Log
DEPENDENCIES :
SERVICE_START_NAME : LocalSystem
启动类别包括auto_start(自动)DEMAND_START(手动)DISABLED(禁止)

4.暂停一个服务
sc pause 服务名

5.启动一个服务
sc start 服务名

6.继续一个服务
sc continue 服务名

7.禁止一个服务
sc 服务名 config start= disabled

8.停止一个服务
sc stop 服务名

9.将一个服务??为自动运行
sc 服务名 config start= auto

10.将一个服务设为手动运行
sc 服务名 config start= demand

11.创建一个服务
sc create 服务名 参数1 参数2 .....
以下是参数列表
type= <own|share|interact|kernel|filesys|rec|error>
start= <boot|system|auto|demand|disabled|error>
error= <normal|severe|critical|error|ignore>
binPath= <BinaryPathName>
group= <LoadOrderGroup>
tag= <yes|no>
depend= <Dependencies(space seperated)>
obj= <AccountName|ObjectName>
DisplayName= <display name>
password= <password>

12.删除一个服务
sc delete 服务名

13.查看所有的已运行的服务
sc query

14.查看所有的services & drivers服务
sc query start= all

15.查看未运行的服务
sc query state= inactive

16.从指定索引号恢复查看
sc query ri= 号

17.锁住服务数据库
sc lock

sc.exe还有其他许多查询和设置的功能,比如查看服务依存关系等等
还可修改更细的服务配置,如修改服务描述服务角??等等,
具体请查看sc.exe的帮助,里面写的很详细.
--------------------------------------------------------------------------

作为一个命令行工具,SC.exe可以用来测试你自己的系统,你可以设置一个批处理文件来使用不同的参数调用

SC.exe来控制服务。这个很有用,如果你想看看你的服务不断的启动和停止,我没有试过哦!让一个服务一下子

打开,一下子关闭,听上去很不???的。如果你的服务进程里面有多个进程的话,你可以保持一个进程继续运行不

让它走开,然后让另一个不断的打开在关闭,还可以寻找一下内存缺乏导致不完全清楚的证据。
下面介绍SC,SC QC,and SC QUERY

SC使用这样的语法:
1. SC [Servername] command Servicename [Optionname= Optionvalues]

2. SC [command]

这里使用第一种语法使用SC,使用第二种语法显示帮助。

下面介绍各种参数。

Servername
可选择:可以使用双??线,如\\\\myserver,也可以是\\\\192.168.0.1来操作远程计算机。如果在本地计算机上操作就不用添加任何参数。

Command
下面列出SC可以使用的命令。
config----改变一个服务的配置。(长久的)

control----对一个服务送出一个控制。

continue--对一个服务送出一个继续控制的要求。

delete----删除一个服务。(从注册表中删除)

create----创建一个服务。(增加到注册表中)

EnumDepend--列举服务的从属关系。

GetDisplayName--获得一个服务的显示名称。

GetKeyName--获得一个服务的服务键名。

interrogate--对一个服务送出一个询问控制要求。

pause----对一个服务送出一个暂停控制要求。

qc----询问一个服务的配置。

query----询问一个服务的状态,也可以列举服务的状态类型。

start----启动一个服务。

stop----对一个服务送出一个停止的要求。

Servicename
在注册表中为service key制定的名称。注意这个名称是不同于显示名称的(这个名称可以用net start和服务控

制面板看到),而SC是使用服务键名来鉴别服务的。

Optionname
这个optionname和optionvalues参数允许你指定操作命令参数的名称和数值。注意,这一点很重要在操作名称和等号之间是没有空格的。一开始我不知道,结果………………,比如,start= optionvalues,这个很重要。

optionvalues可以是0,1,或者是更多的操作参数名称和数值对。
如果你想要看每个命令的可以用的optionvalues,你可以使用sc command这样的格式。这会为你提供详细的帮助。

Optionvalues
为optionname的参数的名称指定它的数值。有效数值范围常常限制于哪一个参数的optionname。如果要列表请用

sc command来询问每个命令。

Comments
很多的命令需要管理员权限,所以我想说,在你操作这些东西的时候最好是管理员。呵呵!

当你键入SC而不带任何参数时,SC.exe会显示帮助信息和可用的命令。当你键入SC紧跟着命令名称时,你可以得

到一个有关这个命令的详细列表。比如,键入sc create可以得到和create有关的列表。
但是除了一个命令,sc query,这会导出该系统中当前正在运行的所有服务和驱动程序的状态。

当你使用start命令时,你可以传递一些参数(arguments)给服务的主????,但是不是给服务进程的主函数。

SC create
这个命令可以在注册表和服务控制管理数据库建立一个入口。

语法1
sc [servername] create Servicename [Optionname= Optionvalues]

这里的servername,servicename,optionname,optionvalues和上面的一样,这里就不多说了。这里我们详细说

明一下optionname和optionvalues。

Optionname--Optionvalues
描述

type=----own, share, interact, kernel, filesys
关于建立服务的类型,选项值包括驱动程序用的类型,默认是share。

start=----boot, system, auto, demand, disabled
关于启动服务的类型,选项值包括驱动程序使用的类型,默认是demand(手动)。

error=----normal, severe, critical, ignore
当服务在导入失败错误的严重性,默认是normal。

binPath=--(string)
服务二进制文件的路径名,这里没有默认值,这个字符串是必须设置的。

group=----(string)
这个服务属于的组,这个组的列表保存在注册表中的ServiceGroupOrder下。默认是nothing。

tag=----(string)
如果这个字符串被设置为yes,sc可以从CreateService call中得到一个tagId。然而,SC并不显示这个标签,所以使用这个没有多少意义。默认是nothing

depend=----(space separated string)有空格的字符串。
在这个服务启动前必须启动的服务的名称或者是组。

obj=----(string)
账号运行使用的名称,也可以说是登陆身份。默认是localsystem

Displayname=--(string)
一个为在用户界面程序中鉴别各个服务使用的字符串。

password=--(string)
一个密码,如果一个不同于localsystem的账号使用时需要使用这个。

Optionvalues
Optionname参数名称的数值列表。参考optionname。当我们输入一个字符串时,如果输入一个空的引用这意味着一个空的字符串将被导入。

Comments
The SC Create command perFORMs the operations of the CreateService API function.
这个sc create命令执行CreateService API函数的操作。详细请见CreateService。

例1
服务开发者可以通过临时改变二进制路径(影像路径)的方式来将这个服务运行在内核调试器的上下关系中。下

面这个例子就可以让我们看到如何改变服务的配置。

sc config NewService binpath= \'ntsd -d c:\\winnt\\System32\\Newserv.exe\'
这个例子会引起服务控制管理器调用ntsd.exe使用下例的参数字符串:
\'-d c:\\nt\\System32\\NewServ.exe\'

当系统装入newserv.exe时ntsd将会转而打断调试器,所以断点可以被设置在服务代码里。
例2
下面这个例子将在本地计算机上,建立一个服务,它将会是一个自动运行服务,并且运行在他自己的进程上。它从属于TDI组和NetBios服务上。注意,你必须在从属中间增加一个空格的引用。

sc create NewService binpath= c:\\winnt\\System32\\NewServ.exe type= own
start= auto depend= \'+TDI Netbios\'

例3
下面这个例子在一台叫做(\\\\myserver)的计算机上为一个叫“NewService”的服务建立的一个注册表登记。
sc \\\\myserver create NewService binpath= c:\\winnt\\system32\\NewServ.exe

按照默认,这个服务会建立一个WIN32_SHARE_PROCESS使用SERVICE_DEMAND_START启动方式。这将不会有任何从属关系,也将会按照localsystem安全上下关系来运行。

SC QC
这个SC QC“询问配置”命令可以列出一个服务的配置信息和QUERY_SERVICE_CONFIG结构??

语法1
sc [Servername] qc Servicename [Buffersize]

Parameters
servername和servicename前面已经介绍过了,这里不再多说。

Buffersize,可选择的,列出缓冲区的尺寸。

Comments

SC QC命令显示了QUERY_SERVICE_CONFIG结构的内容。

以下是QUERY_SERVICE_CONFIG相应的区域。
TYPE------dwServiceType
START_TYPE----dwStartType
ERROR_CONTROL----dwErrorControl
BINARY_PATH_NAME--lpBinaryPathName
LOAD_ORDER_GROUP--lpLoadOrderGroup
TAG------dwTagId
DISPLAY_NAME----lpDisplayName
DEPENDENCIES----lpDependencies
SERVICE_START_NAME--lpServiceStartName

例1

下面这个例子询问了在上面例子中建立的“NewService”服务的配置:

sc \\\\myserver qc NewService

sc显示下面的信息:

SERVICE_NAME: NewService
TYPE : 20 WIN32_SHARE_PROCESS
START_TYPE : 3 DEMAND_START
ERROR_CONTROL : 1 NORMAL
BINARY_PATH_NAME : c:\\winnt\\System32\\NewServ.exe
LOAD_ORDER_GROUP :
TAG : 0
DISPLAY_NAME : NewService
DEPENDENCIES :
SERVICE_START_NAME : LocalSystem

NewService有能力和其他的服务共享一个进程。但是它不是自动启动的。二进制文件名是NewServ.exe。这个服务

不依靠与其它的的服务,而且运行在lcoalSystem的安全上下关系中。这些都是调用QueryServiceStatus基本的返

回,如果还需要更多的细节届时,可以看看API函数文件。

SC QUERY

SC QUERY命令可以获得服务的信息。

语法:
sc [Servername] query { Servicename | Optionname= Optionvalues... }

参数:

servername, servicename, optionname, optionvalues不在解释。只谈一下这个命令提供的数值。

Optionname--Optionvalues
Description

type=----driver, service, all
列举服务的类型,默认是service

state=----active, inactive, all
列举服务的状态,默认是active

bufsize=--(numeric values)
列举缓冲区的尺寸,默认是1024 bytes

ri=----(numeric values)
但开始列举时,恢复指针的数字,默认是0

Optionvalues
同上。

Comments

SC QUERY命令可以显示SERVICE_STATUS结构的内容。

下面是SERVICE_STATUS结构相应的信息:
TYPE------dwServiceType
STATE------dwCurrentState, dwControlsAccepted
WIN32_EXIT_CODE----dwWin32ExitCode
SERVICE_EXIT_CODE--dwServiceSpecificExitCode
CHECKPOINT----dwCheckPoint
WAIT_HINT----dwWaitHint

在启动计算机后,使用SC QUERY命令会告诉你是否,或者不是一个启动服务的尝试。如果这个服务成功启动,WIN32_EXIT_CODE区间会将会包含一个0,当尝试不成功时,当它意识到这个服务不能够启动时,这个区间也会提供一个退出码给服务。

例子

查询“NewService\'服务状态,键入:

sc query NewService

显示一下信息:

SERVICE_NAME: NewService
TYPE : 20 WIN32_SHARE_PROCESS
STATE : 1 STOPPED
(NOT_STOPPABLE,NOT_PAUSABLE,IGNORES_SHUTDOWN)
WIN32_EXIT_CODE : 1077 (0x435)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0

注意,这里存在一个给这个服务的退出码,即使这个服务部不在运行,键入net helpmsg 1077,将会得到对1077错误信息的说明:

上次启动之后,仍未尝试引导服务。

所以,这里我想说一句,希望大家可以活用net helpmsg,这会对你的学习有很大的帮助。

下面在对SC query的命令在说明一下:

列举活动服务和驱动程序状态,使用以下命令:
sc query

显示messenger服务,使用以下命令:
sc query messenger

只列举活动的驱动程序,使用以下命令:
sc query type= driver

列举Win32服务,使用以下命令:
sc query type= service

列举所有的服务和驱动程序,使用以下命令:
sc query state= all

用50 byte的缓冲区来进行列举,使用以下命令:
sc query bufsize= 50

在恢复列举时使用index=14,使用以下命令:
sc query ri=14

列举所有的交互式服务,使用以下命令:
sc query type= service type= interact

Dos命令Tasklist的命令格式和使用方法

Tasklist命令用来显示运行在本地或远程计算机上的所有进程,带有多个执行参数。

  使用格式

  Tasklist [/S system [/U username [/P [password]]]] [/M [module] | /SVC | /V] [/FI filter] [/FO format] [/NH]

  参数含义

  /S system 指定连接到的远程系统。

  /U [domain\]user 指定使用哪个用户执行这个命令。

  /P [password] 为指定的用户指定密码。

  /M [module] 列出调用指定的DLL模块的所有进程。如果没有指定模块名,显示每个进程加载的所有模块。

  /SVC 显示每个进程中的服务。

  /V 显示详细信息。

  /FI filter 显示一系列符合筛选器指定的进程。

  /FO format 指定输出格式,有效值:TABLE、LIST、CSV。

  /NH 指定输出中不显示栏目标题。只对TABLE和CSV格式有效。

  应用实例。

  1.查看本机进程

  在“命令提示符”中输入Tasklist命令即可显示本机的所有进程(图1)。本机的显示结果由5部分组成:图像名(进程名)、PID、会话名、会话#和内存使用。

  2.查看远程系统的进程

  在命令提示符下输入“Tasklist /s 218.22.123.26 /u jtdd /p 12345678”(不包括引号)即可查看到IP地址为218.22.123.26的远程系统的进程(图2)。其中/s参数后的“218.22.123.26”指要查看的远程系统的IP地址,/u后的“jtdd”指Tasklist命令使用的用户账号,它必须是远程系统上的一个合法账号,/p后的“12345678”指jtdd账号的密码。

  注意:使用Tasklist命令查看远程系统的进程时,需要远程机器的RPC服务的支持,否则,该命令不能正常使用。

  3.查看系统进程提供的服务

  Tasklist命令不但可以查看系统进程,而且还可以查看每个进程提供的服务。如查看本机进程SVCHOST.EXE提供的服务,在命令提示符下输入“Tasklist /svc”命令即可(图3)。你会惊奇地发现,有4个SVCHOST.EXE进程,而总共有二十几项服务使用这个进程。

  对于远程系统来说,查看系统服务也很简单,使用“Tasklist /s 218.22.123.26 /u jtdd /p 12345678 /svc”命令,就可以查看IP地址为218.22.123.26的远程系统进程所提供的服务。

  4.查看调用DLL模块文件的进程列表

  要查看本地系统中哪些进程调用了shell32.dll模块文件,只需在命令提示符下输入“Tasklist /m shell32.dll”即可显示这些进程的列表。

  5.使用筛选器查找指定的进程

  在命令提示符下输入“TASKLIST /FI "USERNAME ne NT AUTHORITY\SYSTEM" /FI "STATUS eq running”,就可以列出系统中正在运行的非SYSTEM状态的所有进程。其中“/FI”为筛选器参数,“ne”和“eq”为关系运算符“不相等”和“相等”。

  小提示

  谈到“Tasklist”命令,我们就不得不提到它的孪生兄弟“Taskkill”命令,顾名思义,它是用来关掉进程的。

  要关掉本机的notepad.exe进程,有两种方法:

  1.先使用Tasklist查找它的PID,假设系统显示本机notepad.exe进程的PID值为1132,然后运行“Taskkill /pid 1132”命令即可。其中“/pid”参数后面是要终止进程的PID值。

  2.直接运行“Taskkill /IM notepad.exe”命令,其中“/IM”参数后面为进程的图像名。