WZC(Windows Zero Configuration)是微軟附於XP系統的管理無線網路的模組。它可以自動搜尋附近的AP(Access Point),設定要串連到的網路SSID和密碼以及編碼方式,最終建立一個AP和電腦之間的串連。這個軟體介面友好,有各種各樣編碼的選擇,還算一個不錯的工具。
很不幸的,我們電腦中無線網卡的廠商,也提供了一個功能類似的管理軟體。安裝無線網卡驅動時,此軟體趁機把控制權從WZC手裡奪過來。“篡權”倒也罷了,最怕篡之後又不好好乾活,還不讓人改回到WZC,這個就有點無賴了。
我的電腦就是這樣,開始無線網卡不工作,裝了一個Dell Wireless Card Utility才能連上。這東西一開機就自動啟動一大堆可執行檔,我看在它還工作的份上,就忍了。最近由於工作要求,電腦要和一個AP串連,該AP用的是WPA網路驗證和TKIP資料加密,而這個Dell Wireless Card Utility根本就不提供這樣的選項。
無奈下我想重新用微軟內建的無線網路管理,在“查看可用的無線網路”中,得到錯誤提示:“WZC沒有啟動”,仔細查看,發現WZC服務顯示是“自動啟動”,狀態卻是“停止”,雙擊手工啟動時,顯示以下錯誤資訊:
錯誤1608 依存服務或組無法啟動
我知道是Dell Wireless Card Utility在從中作梗,就把它開啟,把“讓此工具管理你的無線網路”前面的勾去掉,還是不能啟動WZC。一氣之下把Dell的破軟體刪掉,還是不能啟動WZC。
網上搜尋了一番,竟然沒有人碰到過我這樣的問題。類似的倒不少,這樣那樣的建議都試過了,還是不行。
到事件檢視器看看,發現以下系統錯誤資訊:
與 Wireless Zero Configuration 服務相依的 NDIS 使用者模式 I/O 協議 服務因下列錯誤而無法啟動:
無法啟動服務,原因可能是已被禁用或與其相關聯的裝置沒有啟動。
看來是NDIS的問題。到註冊表下,看/HKEY_Local_Machine/System/CurrentControlSet/Services。 WZCSVC依賴兩個服務:RpcSs和Ndsiuio。前一個已經啟動,後一個的啟動選擇是4(禁止啟動)。這就難怪了,Ndsiuio啟動不了,WZC也啟動不了。
把Ndsiuio的”start”從4改成2(自動啟動),重啟電腦,WZC正常啟動,設定密碼和SSID後,順利建立串連。
結論:把Ndsiuio從自動啟動改為禁止啟動顯然是DELL Wireless Card Utility安裝時做的“好事”,做了也無所謂,你的卸載程式應該把這個註冊項改回去呀。一般程式卸載時,會盡量把系統包括註冊表回複到安裝前狀態,不然就未免操蛋了。我們使用者哪知道你安裝時幹了些啥?
說起來,DELL也是替人受過。這個軟體其實是Wireless Card的廠商Broadcom提供的,DELL只不過是貼牌商。DELL現在是慘淡經營,每況日下。Broadcom如果盡招這樣的操蛋程式員,離倒閉也不遠了。