• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    vbs中关于计算机名的相关讨论
    原文:http://www.opencjk.org/~scz/

     关于计算机名的相关讨论

    http://www.opencjk.org/~scz/windows/200603151441.txt

    Q: 我的电脑->属性->计算机名->计算机描述,我想改动这里,但它是灰色不可写的。

    A: 如果lanmanserver service未启用,就会这样。执行"net start srv"即可。

    Q: 我想修改所属工作组,但那里是灰色不可写的。

    A: 如果lanmanworkstation service未启用,就会这样。执行"net start rdr"即可。

    Q: 如何在命令行上修改计算机名

    A: backend@nsfocus

    --------------------------------------------------------------------------
    set obj     = getobject( "winmgmts:\\.\root\cimv2" )
    set list    = obj.execquery( "select * from win32_computersystem" )
    for each x in list
        x.rename( wscript.arguments.item( 0 ) )
    next
    --------------------------------------------------------------------------

    > cscript.exe //nologo computerrename.vbs xxx

    D: scz@nsfocus

    平常自然语言所说的计算机名非常不精确,下面精确地介绍一下与之相关的注册表项:

    --------------------------------------------------------------------------
    windows Registry Editor Version 5.00

    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ComputerName\ActiveComputerName]
    "ComputerName"="CLOUDSKY"

    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName]
    "ComputerName"="CLOUDSKY"

    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
    "Domain"=""
    "Hostname"="CLOUDSKY"
    "NV Domain"=""
    "NV Hostname"="CLOUDSKY"
    --------------------------------------------------------------------------

    ActiveComputerName处的ComputerName对应当前NetBIOS名。另一处ComputerName将
    在下一次重启时被复制到ActiveComputerName处。

    "Hostname>.Domain>"对应当前FQDN(全称域名),"NV Hostname>.NV Domain>"将
    在下一台重启时被复制到"Hostname>.Domain>"处。

    显然,我们有两种名字,一种是NetBIOS名,一种是FQDN,它们之间没有必然联系,
    尽管大多数时候它们是一致的。NetBIOS名可用在很多地方,适用于TCP/IP、IPX/SPX、
    NetBEUI等实现了NetBIOS接口的通信协议。FQDN却只用于TCP/IP协议。微软在名字解
    析问题上经历了多次变化,名字解析顺序各不相同,最终用户很难区分NetBIOS名与
    FQDN。比如"ping name>"究竟使用哪类名字,会有多个变种,依赖操作系统、网络
    拓扑,这里不详细讨论了。总之要记住,说起计算机名时,有两种名字。

    在GUI上修改计算机名时,实际操作的是:

    --------------------------------------------------------------------------
    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName]
    "ComputerName"="CLOUDSKY"

    [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
    "NV Domain"=""
    "NV Hostname"="CLOUDSKY"
    --------------------------------------------------------------------------

    现在应该明白为什么在GUI上修改计算机名后需要要重启才能生效了吧。

    一般不建议直接操作注册表修改这些值,可以考虑Win32 API。SetComputerName()只
    能设置NetBIOS名。SetComputerNameEx()可用于设置NetBIOS名或FQDN。

    还可以用WMI,就像backend所演示的那样。这种办法与GUI修改法完全等价,同时修
    改了NetBIOS名与FQDN,重启后生效。注意,这两种办法修改NetBIOS名时自动将之转
    换成大写,而FQDN保持大小写敏感。

    用注册表监视器观察hostname.exe,就会发现该命令只取了FQDN中的Hostname,并不
    取NetBIOS名。"nbtstat -A target>"所涉及的则是NetBIOS名。devmgmt.msc取的是
    ActiveComputerName处的NetBIOS名。

    如果破坏了HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ComputerName,
    在我的电脑里查看NetBIOS名,可能是空白。此时访问"\\ip>\ipc$",会出错,微软
    给出的错误信息基本无用。抓包发现没有任何IP报文出现,出错层次很高,还没到达
    IP层。访问"\\name>\ipc$"倒是能成功。flier就碰上了这种事,应该是安装某软件
    时直接操作注册表修改计算机名出岔子了。

    Q: 在XP中打开磁盘管理,报"RPC服务不可用"。

    A:

    这是"Logical Disk Manager/dmserver"服务所用计算机名与ActiveComputerName处
    的NetBIOS名不匹配所致,一般都是因为后者被破坏。重启OS后如果还不能恢复,请
    在GUI上重新设置计算机名,应该就可以了。参看:

    http://support.microsoft.com/kb/884564

    上一篇:[导入][原创]用脚本控制迅雷下载
    下一篇:用VBS模拟二叉树,可以得到一个排序办法.
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    vbs中关于计算机名的相关讨论 vbs,中,关于,计算,机名,的,