vbs中關(guān)于計(jì)算機(jī)名的相關(guān)討論
原文:http://www.opencjk.org/~scz/
關(guān)于計(jì)算機(jī)名的相關(guān)討論
http://www.opencjk.org/~scz/windows/200603151441.txt
Q: 我的電腦->屬性->計(jì)算機(jī)名->計(jì)算機(jī)描述,我想改動(dòng)這里,但它是灰色不可寫(xiě)的。
A: 如果lanmanserver service未啟用,就會(huì)這樣。執(zhí)行"net start srv"即可。
Q: 我想修改所屬工作組,但那里是灰色不可寫(xiě)的。
A: 如果lanmanworkstation service未啟用,就會(huì)這樣。執(zhí)行"net start rdr"即可。
Q: 如何在命令行上修改計(jì)算機(jī)名
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
平常自然語(yǔ)言所說(shuō)的計(jì)算機(jī)名非常不精確,下面精確地介紹一下與之相關(guān)的注冊(cè)表項(xiàng):
--------------------------------------------------------------------------
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對(duì)應(yīng)當(dāng)前NetBIOS名。另一處ComputerName將
在下一次重啟時(shí)被復(fù)制到ActiveComputerName處。
"<Hostname>.<Domain>"對(duì)應(yīng)當(dāng)前FQDN(全稱域名),"<NV Hostname>.<NV Domain>"將
在下一臺(tái)重啟時(shí)被復(fù)制到"<Hostname>.<Domain>"處。
顯然,我們有兩種名字,一種是NetBIOS名,一種是FQDN,它們之間沒(méi)有必然聯(lián)系,
盡管大多數(shù)時(shí)候它們是一致的。NetBIOS名可用在很多地方,適用于TCP/IP、IPX/SPX、
NetBEUI等實(shí)現(xiàn)了NetBIOS接口的通信協(xié)議。FQDN卻只用于TCP/IP協(xié)議。微軟在名字解
析問(wèn)題上經(jīng)歷了多次變化,名字解析順序各不相同,最終用戶很難區(qū)分NetBIOS名與
FQDN。比如"ping <name>"究竟使用哪類(lèi)名字,會(huì)有多個(gè)變種,依賴操作系統(tǒng)、網(wǎng)絡(luò)
拓?fù)?,這里不詳細(xì)討論了??傊涀?,說(shuō)起計(jì)算機(jī)名時(shí),有兩種名字。
在GUI上修改計(jì)算機(jī)名時(shí),實(shí)際操作的是:
--------------------------------------------------------------------------
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName]
"ComputerName"="CLOUDSKY"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
"NV Domain"=""
"NV Hostname"="CLOUDSKY"
--------------------------------------------------------------------------
現(xiàn)在應(yīng)該明白為什么在GUI上修改計(jì)算機(jī)名后需要要重啟才能生效了吧。
一般不建議直接操作注冊(cè)表修改這些值,可以考慮Win32 API。SetComputerName()只
能設(shè)置NetBIOS名。SetComputerNameEx()可用于設(shè)置NetBIOS名或FQDN。
還可以用WMI,就像backend所演示的那樣。這種辦法與GUI修改法完全等價(jià),同時(shí)修
改了NetBIOS名與FQDN,重啟后生效。注意,這兩種辦法修改NetBIOS名時(shí)自動(dòng)將之轉(zhuǎn)
換成大寫(xiě),而FQDN保持大小寫(xiě)敏感。
用注冊(cè)表監(jiān)視器觀察hostname.exe,就會(huì)發(fā)現(xiàn)該命令只取了FQDN中的Hostname,并不
取NetBIOS名。"nbtstat -A <target>"所涉及的則是NetBIOS名。devmgmt.msc取的是
ActiveComputerName處的NetBIOS名。
如果破壞了HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ComputerName,
在我的電腦里查看NetBIOS名,可能是空白。此時(shí)訪問(wèn)"\\<ip>\ipc$",會(huì)出錯(cuò),微軟
給出的錯(cuò)誤信息基本無(wú)用。抓包發(fā)現(xiàn)沒(méi)有任何IP報(bào)文出現(xiàn),出錯(cuò)層次很高,還沒(méi)到達(dá)
IP層。訪問(wèn)"\\<name>\ipc$"倒是能成功。flier就碰上了這種事,應(yīng)該是安裝某軟件
時(shí)直接操作注冊(cè)表修改計(jì)算機(jī)名出岔子了。
Q: 在XP中打開(kāi)磁盤(pán)管理,報(bào)"RPC服務(wù)不可用"。
A:
這是"Logical Disk Manager/dmserver"服務(wù)所用計(jì)算機(jī)名與ActiveComputerName處
的NetBIOS名不匹配所致,一般都是因?yàn)楹笳弑黄茐摹V貑S后如果還不能恢復(fù),請(qǐng)
在GUI上重新設(shè)置計(jì)算機(jī)名,應(yīng)該就可以了。參看:
http://support.microsoft.com/kb/884564
上一篇:基于邏輯運(yùn)算的簡(jiǎn)單權(quán)限系統(tǒng)(原理,設(shè)計(jì),實(shí)現(xiàn)) VBS 版
欄 目:vb
下一篇:如何產(chǎn)生真正的隨機(jī)函數(shù)?
本文標(biāo)題:vbs中關(guān)于計(jì)算機(jī)名的相關(guān)討論
本文地址:http://mengdiqiu.com.cn/a1/vb/7937.html
您可能感興趣的文章
- 01-10下載文件到本地運(yùn)行的vbs
- 01-10VBS中的正則表達(dá)式的用法大全 <font color=red>原創(chuàng)&
- 01-10VBS中SendKeys的基本應(yīng)用
- 01-10VBScript教程 第十一課深入VBScript
- 01-10用VBSCRIPT控制ONSUBMIT事件
- 01-10VBScript語(yǔ)法速查及實(shí)例說(shuō)明
- 01-10VBS中Select CASE的其它用法
- 01-10VBScript教程 第七課使用條件語(yǔ)句
- 01-10vbscript 可以按引用傳遞參數(shù)嗎?
- 01-10VBScript教程 第二課在HTML頁(yè)面中添加VBscript代碼


閱讀排行
- 1C語(yǔ)言 while語(yǔ)句的用法詳解
- 2java 實(shí)現(xiàn)簡(jiǎn)單圣誕樹(shù)的示例代碼(圣誕
- 3利用C語(yǔ)言實(shí)現(xiàn)“百馬百擔(dān)”問(wèn)題方法
- 4C語(yǔ)言中計(jì)算正弦的相關(guān)函數(shù)總結(jié)
- 5c語(yǔ)言計(jì)算三角形面積代碼
- 6什么是 WSH(腳本宿主)的詳細(xì)解釋
- 7C++ 中隨機(jī)函數(shù)random函數(shù)的使用方法
- 8正則表達(dá)式匹配各種特殊字符
- 9C語(yǔ)言十進(jìn)制轉(zhuǎn)二進(jìn)制代碼實(shí)例
- 10C語(yǔ)言查找數(shù)組里數(shù)字重復(fù)次數(shù)的方法
本欄相關(guān)
- 01-10下載文件到本地運(yùn)行的vbs
- 01-10飄葉千夫指源代碼,又稱qq刷屏器
- 01-10SendKeys參考文檔
- 01-10什么是一個(gè)高效的軟件
- 01-10VBS中的正則表達(dá)式的用法大全 &l
- 01-10exe2swf 工具(Adodb.Stream版)
- 01-10VBS中SendKeys的基本應(yīng)用
- 01-10用VBSCRIPT控制ONSUBMIT事件
- 01-10VBScript教程 第十一課深入VBScript
- 01-10VBScript語(yǔ)法速查及實(shí)例說(shuō)明
隨機(jī)閱讀
- 08-05dedecms(織夢(mèng))副欄目數(shù)量限制代碼修改
- 01-10delphi制作wav文件的方法
- 01-10使用C語(yǔ)言求解撲克牌的順子及n個(gè)骰子
- 08-05DEDE織夢(mèng)data目錄下的sessions文件夾有什
- 04-02jquery與jsp,用jquery
- 01-11ajax實(shí)現(xiàn)頁(yè)面的局部加載
- 01-11Mac OSX 打開(kāi)原生自帶讀寫(xiě)NTFS功能(圖文
- 01-10C#中split用法實(shí)例總結(jié)
- 08-05織夢(mèng)dedecms什么時(shí)候用欄目交叉功能?
- 01-10SublimeText編譯C開(kāi)發(fā)環(huán)境設(shè)置