用vbs從本地 Administrators 組中刪除組
問(wèn):
您好,腳本專家!如何從本地 Administrators 組中刪除組?
-- SB
答:
您好,SB。有一位腳本專家還隱約記得早年一部名為 Branded 的電視節(jié)目,節(jié)目中的主人公(由查克·康納斯扮演)被指控為懦夫并被不光彩地從美國(guó)騎兵隊(duì)開(kāi)除。差不多所有腳本專家都記得它的開(kāi)頭部分:騎兵隊(duì)扯掉該士兵制服上的肩章并將它的劍一折兩斷,然后令其恥辱地快步走出要塞。
為何要憶起這一幕?沒(méi)有什么真正的原因,我們只是認(rèn)為如果每當(dāng)將用戶或組從本地 Administrators 組中刪除時(shí)都舉行類似的儀式會(huì)很酷。不過(guò),在這種理想實(shí)現(xiàn)之前,可以使用與以下類似的腳本將組(此例中為 Active Directory 組)從本地 Administrators 組中刪除:
strComputer = "atl-fs-01"
Set objAdmins = GetObject("WinNT://" & strComputer & "/Administrators")
Set objGroup = GetObject("WinNT://fabrikam/finance")
objAdmins.Remove(objGroup.ADsPath)
是的,這非常簡(jiǎn)單,不是嗎?此腳本首先會(huì)將計(jì)算機(jī)的名稱(在本例中為 atl-fs-01)賦值給名為 strComputer 的變量。然后,我們就可以使用下面這行代碼綁定到該計(jì)算機(jī)上的本地 Administrators 組:
Set objAdmins = GetObject("WinNT://" & strComputer & "/Administrators")
獲得對(duì) Administrators 組的對(duì)象引用后,我們的下一個(gè)任務(wù)便是創(chuàng)建另一個(gè)對(duì)象引用,它是對(duì)將刪除的組的引用。下面這行代碼就用來(lái)完成該任務(wù):
Set objGroup = GetObject("WinNT://fabrikam/finance")
請(qǐng)注意,引用組帳戶時(shí)我們使用老式的 Windows NT 式命名約定:fabrikam/finance。為什么會(huì)是這樣?很簡(jiǎn)單:為對(duì)本地用戶和組進(jìn)行操作,我們不得不使用 WinNT 提供程序。WinNT 提供程序不明白 Active Directory 術(shù)語(yǔ),對(duì)于與以下類似的對(duì)象路徑摸不著頭腦:
cn=Finance Users, ou=Finance, dc=fabrikam, dc=com
因此,我們不得不退一步采用老式的帳戶名:域名/登錄名。但是沒(méi)關(guān)系:所幸 Active Directory 也明白此命名約定。當(dāng)我們請(qǐng)求帳戶 fabrikam/finance 時(shí),Active Directory 對(duì)我們的言語(yǔ)知道得一清二楚。
注意:此問(wèn)題以前提出過(guò),但值得再次提出:是的,您可以使用 WinNT 提供程序訪問(wèn) Active Directory 中的對(duì)象。而且,對(duì)象路徑要簡(jiǎn)單得多,這沒(méi)錯(cuò)。但請(qǐng)不要冒險(xiǎn)行事:請(qǐng)僅在絕對(duì)必要的情況下使用 WinNT 提供程序。為什么這么說(shuō)呢?好吧,舉一個(gè)例子,就用戶帳戶而言,通常在與 Active Directory 協(xié)作時(shí)使用的 LDAP 提供程序支持超過(guò) 200 個(gè)屬性;而 WinNT 提供程序僅支持約 20 個(gè)屬性。LDAP 提供程序要強(qiáng)大得多、有用得多。
獲得對(duì)組的對(duì)象引用后,我們所要做的全部工作便是調(diào)用 Remove 方法,將該組從本地 Administrators 組中刪除:
objAdmins.Remove(objGroup.ADsPath)
我們?nèi)匀徽J(rèn)為撕掉該人襯衣上的口袋保護(hù)袋,然后用膝蓋折斷他的訂書機(jī)會(huì)更酷,但這已經(jīng)可以達(dá)到目的。
當(dāng)然,您要?jiǎng)h除的組可能不是 Active Directory 組,而可能是本地組。這會(huì)成為問(wèn)題嗎?不會(huì);實(shí)際上還要簡(jiǎn)單一點(diǎn)兒。只需直接綁定到本地機(jī)上的組帳戶,然后將它刪除:
strComputer = "atl-fs-01"
Set objAdmins = GetObject("WinNT://" & strComputer & "/Administrators")
Set objGroup = GetObject("WinNT://finance")
objAdmins.Remove(objGroup.ADsPath)
順便說(shuō)一句,從一個(gè)組中刪除另一個(gè)組的過(guò)程與從一個(gè)組中刪除用戶的過(guò)程完全相同:綁定到目標(biāo)組(此例中為本地 Administrators 組),綁定到要?jiǎng)h除的對(duì)象(無(wú)論是組還是用戶,都沒(méi)有關(guān)系),然后調(diào)用 Remove 方法,將要?jiǎng)h除帳戶的 ADsPath 作為唯一參數(shù)進(jìn)行傳遞。
上一篇:用vbs針對(duì)一個(gè) IP 地址范圍運(yùn)行腳本
欄 目:vb
下一篇:用vbs檢測(cè)Internet Explorer 中是否啟用了 ActiveX
本文標(biāo)題:用vbs從本地 Administrators 組中刪除組
本文地址:http://mengdiqiu.com.cn/a1/vb/7877.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ù)量限制代碼修改
- 08-05DEDE織夢(mèng)data目錄下的sessions文件夾有什
- 01-11ajax實(shí)現(xiàn)頁(yè)面的局部加載
- 01-10SublimeText編譯C開(kāi)發(fā)環(huán)境設(shè)置
- 01-10C#中split用法實(shí)例總結(jié)
- 08-05織夢(mèng)dedecms什么時(shí)候用欄目交叉功能?
- 01-11Mac OSX 打開(kāi)原生自帶讀寫NTFS功能(圖文
- 01-10delphi制作wav文件的方法
- 01-10使用C語(yǔ)言求解撲克牌的順子及n個(gè)骰子
- 04-02jquery與jsp,用jquery