Board logo

标题: 请教,批处理下如何读取和修改本机计算机名和工作组? [打印本页]

作者: yaoguof     时间: 2006-10-23 01:52    标题: 请教,批处理下如何读取和修改本机计算机名和工作组?

找了好多资料都找不到,麻烦谁能指点以下

如何读取和修改本机的计算机名和工作组? 谢谢
作者: electronixtar     时间: 2006-10-23 02:43
和注册表有关,与批处理关系不大。

搜索下计算机名字的注册表键值就行了,用 reg 命令
作者: vkill     时间: 2006-10-23 03:44
查询本机的计算机名 hostname

要修改要修改注册表吧~
作者: 3742668     时间: 2006-10-23 04:56

@echo off
    echo 本地计算机名为: %COMPUTERNAME%

    echo 工作组/域:
    wmic computersystem get domain
pause

    echo 更多详细信息:
    systeminfo
    rem wmic computersystem
更改:
@echo off
    echo 更改用户名:
    wmic useraccount where "name='3742668" call Rename cool3742668

    echo 更改计算机名:
    wmic computersystem where "name='microsoft'" call rename google

    echo 更改工作组:
    wmic computersystem where "name='google'" call joindomainorworkgroup "","","MyGroup",1
在更改了计算机名后,从"我的电脑"右键中看到的名字是没有变化的,不过从set,systeminfo以及wmic中都可以看到计算机名已经变更.
作者: vkill     时间: 2006-10-23 04:57
wmic高人,学习
作者: yaoguof     时间: 2006-10-23 05:46
谢谢版主的回复
怎么样才能让“我的电脑”属性里面的工作组一起变化呢
注册表中是没有工作组的, 通过注册表修改工作组好像是行不通的
作者: 3742668     时间: 2006-10-23 06:08
汗一个,试都没有试过就回贴?
我说不能显示只是在权限不够的情况下,如果是没有限制的administraotrs组成员的话是可以直接看到变化的.
如果还有问题参考<帮助与支持>以及/?.
作者: bosskof     时间: 2006-10-24 13:05
为什么我运行不成功呢?
显示:无可用范例。
我的是2003系统
还有:
打入computersystem /?后出现
用法:
COMPUTERSYSTEM ASSOC [<format specifier>]
COMPUTERSYSTEM CALL <method name> [<actual param list>]
COMPUTERSYSTEM CREATE <assign list>
COMPUTERSYSTEM DELETE
COMPUTERSYSTEM GET [<property list>] [<get switches>]
COMPUTERSYSTEM LIST [<list format>] [<list switches>]
COMPUTERSYSTEM SET [<assign list>]
望能粗略的帮我解释一下,谢谢版主
作者: lzys     时间: 2006-10-24 17:55
Ghost后自动修改IP和计算机名的VBS脚本!(感觉蛮好)

现推出, 。VBS   版  Ghost 改机器名 IP地址 新版本。

AutoConfig.vbs

---------------------------------------------------------------------------

On Error Resume Next
'取得本机器的网卡物理地址: MacAddress
strComputer = "."
     Set objWMIService = GetObject("winmgmts:" _
              & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
     Set colNicConfigs = objWMIService.ExecQuery _
              ("SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = True")

            For Each objNicConfig In colNicConfigs
                  Set objNic = objWMIService.Get _
                           ("Win32_NetworkAdapter.DeviceID=" & objNicConfig.Index)
  
          '本机器的网卡物理地址写入变量 : strMacAddress
                       strMacAddress = objNic.MACAddress
  
             Next  


'读取配置文件
         dim files,file,strReadLine ,RowNumber
           Const ForReading = 1
           set files=CreateObject("Scripting.FileSystemObject")
                if files.fileexists("E:\AutoConfig\config.cfg", ForReading) then
                set file=files.opentextfile("E:\AutoConfig\config.cfg")
                 else
                msgbox("请在程序目录下放置MAC列表文件(文件名为:config.cfg)")
                 end if
                     
                           RowNumber = 0
                Do While file.AtEndOfStream <> True
                     strReadLine =  file.ReadLine
                     RowNumber = RowNumber + 1
                    If InStr(strReadLine,strMacAddress) <> 0 Then
                          ComputerConfig = Split(strReadLine , ";")
                        
                       Exit Do
                     End If
                 Loop

'修改IP地址
strComputer = "."

SubnetIPAddress = "192.168.0."
LocalIPAddress = SubnetIPAddress & RowNumber

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colNetAdapters = objWMIService.ExecQuery _
    ("Select * from Win32_NetworkAdapterConfiguration where IPEnabled=TRUE")
strIPAddress = Array(LocalIPAddress)
strSubnetMask = Array("255.255.255.0")
strGateway = Array("192.168.0.1")
strGatewayMetric = Array(1)
For Each objNetAdapter in colNetAdapters
    errEnable = objNetAdapter.EnableStatic(strIPAddress, strSubnetMask)
    errGateways = objNetAdapter.SetGateways(strGateway, strGatewaymetric)
   
Next

'修改机器名      
Set WshShell = CreateObject("Wscript.Shell")
Set Fso = CreateObject("SCripting.FileSystemObject")

WshShell.RegWrite "HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName\ComputerName", ComputerConfig(0) ,"REG_SZ"
WshShell.RegWrite "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\NV Hostname", ComputerConfig(0) ,"REG_SZ"
WshShell.RegWrite "HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Hostname", ComputerConfig(0) ,"REG_SZ"


'修改CS-CDKEY
WshShell.RegWrite "HKCU\Software\Valve\CounterStrike\Settings\Key",  ComputerConfig(3),"REG_SZ"                     
WshShell.RegWrite "HKU\S-1-5-21-839522115-507921405-2146800195-500\Software\Valve\CounterStrike\Settings\Key", ComputerConfig(3),"REG_SZ"
WshShell.RegWrite "HKU\S-1-5-21-1085031214-220523388-839522115-500\Software\Valve\CounterStrike\Settings\Key", ComputerConfig(3),"REG_SZ"
WshShell.RegWrite "HKU\S-1-5-21-1614895754-1417001333-839522115-500\Software\Valve\CounterStrike\Settings\key", ComputerConfig(3),"REG_SZ"

'清除启动项
WshShell.RegDelete"HKLM\Software\Microsoft\Windows\CurrentVersion\Run\AutoConfig"
Set Wshell=Nothing

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate,(Shutdown)}!\\" & strComputer & "\root\cimv2")
Set colOperatingSystems = objWMIService.ExecQuery _
    ("Select * from Win32_OperatingSystem")
For Each objOperatingSystem in colOperatingSystems
    ObjOperatingSystem.Reboot()
Next
On Error GoTo  0                    
----------------------------------------------------------------------------------------

l另存为 “     AutoConfig.vbs” 文件。

config.cfg

-----------------------------------------------------------------------------------

           [ComputerName]  [MacAddress]  [IPAddress] [CS:CDKey]   
Nh002
Nh003
Nh004
Nh005; 00:11:5B:CF:C8:12;  192.168.0.5; 3245164654063  
Nh006; 00:11:5B:BD:2F:E4;  192.168.0.6; 3385636230783   
Nh007; 00:11:5B:B3:F0:86;  192.168.0.7; 2030698167302   
Nh008; 00:11:5B:C8:C8:E1;  192.168.0.8; 7149496192146   
Nh009; 00:11:5B:CF:C6:D9;  192.168.0.9; 6823878707810   

---------------------------------------------------------------------------------

按照格式,添加 自己的机器配置。 另存为“ config.cfg”

添加启动项.reg


------------------------------------------------------------------------------

   Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
"AutoConfig"="E:\\AutoConfig\\AutoConfig.vbs"

------------------------------------------------------------------------------------------------------

另存为“   添加启动项.reg”

先看说明.txt


--------------------------------------------------------------------------------------------

--------------------------------------------------------

###如有不明白的地方请联系我,

联系  
         QQ:233002600
     E-mail: digsea2000@163.com
-------------------------------------------------------


**************************************************************************************
###本程序的基本思路是:

   首先在 "Config.cfg" 文件内放置全部的机器名,网卡地址, IP地址, CS-CDKEY。

   程序运行后读取本机的网卡地址,再到 "Config.cfg" 文件内找相应的地址写在第几行,

   来确定本机的机器名. 再根据所得到的行号,来配置应该设置的IP, CS-CDKEY,等等.


###使用步骤

1.依次填好 "Config.cfg"  文件里面的机器配置

2.在母盘做好准备克盘之前将"添加启动项.reg"导入注册表

3.克盘后重启,自动设置开始


###各文件内容介绍:

  本程序主要包含4个文件:

   假设你的系统是 Win2k Pro,

Autoconfig.vbs   用于2000系统的主程序.
Config.cfg       机器配置列表
添加启动项.reg  母盘制作好后运行一下,克盘会才能自动启动主程序.
先看说明.txt     帮助说明


'Autoconfig.vbs   用于2000系统的主程序.
  如果,你能修改它,使程序更有效率。你就看着办,
  
  看不懂呢,就不用管它。

'添加启动项.reg
该文件的作用就是让克好的盘在启动后能自动运行主程序,
而主程序会在运行后自动删除这个启动项目,
所以主程序只会运行一次,以后是不会自动运行的.


注意: 文件的: 盘符,路径,文件夹名字。都是设置好的。
       如果,你改变路径。请把此文件中的配置也做相应修改。


'Config.cfg
文件内依次写入每台机器的MAC地址,保证1号写在第1行,8号写在第8行......

如你的机器直接从10号机编号,在上面预留9个空行,10号机的MAC就写在第10行

每一行的书写格式必须完整,   
                         如:
                               Nh005; 00:11:5B:CF:C8:12;  192.168.0.5;   3245164654063

因为,IP地址,是根据 MAC 所在行的 行号确定的。

如果,某个机器号不连续,请只写机器号, 把 MAC 保持留空。

**************************************************************************************

-----------------------------------------------------------------------------------------------

另存为“先看说明.txt”文件。

把以上 四个文件 放在“  E:\Autoconfig\ " 文件夹 下面。

放在别出,你要修改,“AutoConfig.vbs”,“   添加启动项.reg”

这两个文件。按照以上路径呢,你就可以,只修改你的机器配置了!~