在sql2000和sql2005之間折騰,把sql2005完整開發版卸載了,安裝了精簡版的sql2005後,再開啟sql2000的企業管理器的時候,系統就提示“嵌入式管理單元初始化失敗,名稱未知,CLSID:{00100100-1816-11D0-8EF5-00AA0062C58F}”錯誤,怎麼都打不開企業管理器了。
這應該是sql2000的某些註冊組件在卸載sql2005的時候被破壞了,需要重新註冊。
解決方案:通過批處理將SQL相關組件全部重新註冊一遍來解決這個問題。
把以下內容粘貼到記事本作成*bat檔案執行。
@echo on
regsvr32 autoplt.dll /s
regsvr32 autowiz.dll /s
regsvr32 axscphst.dll /s
regsvr32 cdwtasks.dll /s
regsvr32 cdwtskui.dll /s
regsvr32 colctrl.dll /s
regsvr32 comnevnt.dll /s
regsvr32 ctasksui.dll /s
regsvr32 custtask.dll /s
regsvr32 dtsffile.dll /s
regsvr32 dtspkg.dll /s
regsvr32 dtspump.dll /s
regsvr32 dtsui.dll /s
regsvr32 dtswiz.dll /s
regsvr32 hhsetup.dll /s
regsvr32 objmgr.dll /s
regsvr32 pfclnt80.dll /s
regsvr32 pfutil80.dll /s
regsvr32 psdcscm.dll /s
regsvr32 sdiclnt.dll /s
regsvr32 semcomn.dll /s
regsvr32 Semcros.dll /s
regsvr32 Semdll.dll /s
regsvr32 semdts.dll /s
regsvr32 SEMEXEC.dll /s
regsvr32 semmap.dll /s
regsvr32 semnt.dll /s
regsvr32 Semobj.dll /s
regsvr32 semrepl.dll /s
regsvr32 semsfc.dll /s
regsvr32 Semsys.dll /s
regsvr32 semwebwz.dll /s
regsvr32 Semwiz.dll /s
regsvr32 sqdedev.dll /s
regsvr32 SQLDMO.dll /s
regsvr32 sqlftwiz.dll /s
regsvr32 sqlgui.dll /s
regsvr32 sqllex.dll /s
regsvr32 sqlmmc.dll /s
regsvr32 sqlns.dll /s
regsvr32 sqlqry.dll /s
regsvr32 sqlresld.dll /s
regsvr32 sqlsui.dll /s
regsvr32 sqlsvc.dll /s
regsvr32 sqlvdir.dll /s
regsvr32 stardds.dll /s
regsvr32 svrnetcn.dll /s
regsvr32 w95scm.dll /s
這個方法我第一次實驗的時候並沒有成功,但經過重新安裝sp4補丁,然後再重新對“sql現有組件進行升級、刪除或添加組件”的方式升級後(如),再次運行上面的這個大量註冊sql組件的方式,實驗成功通過,但具體個人情況不同,可能有些電腦不行。
還有以下網上搜集方法:
現象: 運行gpedit.msc 提示如下:
嵌入式管理單元初始化失敗。
名稱:組策略
CLSID:{8FC0B734-A0E1-11D1-A7D3-0000F87571E3}
方法一、1、點擊『開始』菜單
2、點擊“運行”
3、鍵入"regedit"(不包括驚嘆號)
4、在註冊表索引值HKEY_CURRENT_USER/Software/Policies/Microsoft/MMC
請將 RestrictToPermittedSnapins 的值設定為 0
方法二、1、點擊『開始』菜單
2、點擊“運行”
3、鍵入"regedit"(不包括驚嘆號)
4、在註冊表索引值 HKEY_CURRENT_USER/Software/Policies/Microsoft/Mmc/{8FC0B734-A0E1-11D1-A7D3-0000F87571E3}/Restrict_Run
和HKEY_CURRENT_USER/Software/Policies/Microsoft/MMC/{0F6B957E-509E-11D1-A7CC-0000F87571E3}/Restrict_Run 請將 Restrict_Run 的值設定為 0
5、修改完畢後重啟。
方法三、1、點擊『開始』菜單
2、點擊“運行”
3、鍵入"regedit"(不包括驚嘆號)
4、在註冊表索引值HKEY_CLASSES_ROOT/CLSID/{8FC0B734-A0E1-11D1-A7D3-0000F87571E3}/InProcServer32 把其中的default改成:%SystemRoot%/System32/GPEdit.dll
5、修改完畢後重啟。
方法四、檢查環境變數:
a、點擊『開始』菜單
b、點擊“控制台”
c、在“控制台”中開啟“系統”
d、在“系統屬性”中點擊“進階”標籤
e、在“進階”標籤頁中點擊“環境變數”按鈕
f、在“環境變數”中的“系統變數”框中的變數名為Path中修改變數值為:
%Systemroot%/System32;%Systemroot%;%Systemroot%/system32/WBEM
方法五、運行regsvr32 filemgmt.dll
a、點擊『開始』菜單
b、點擊“運行”
c、鍵入"regsvr32 filemgmt.dll"(不包括驚嘆號)
方法六、如果組策略找不到 framedyn.dll,就可能會出現這種錯誤。如果使用安裝指令碼,要確保指令碼置於系統路徑中的%windir%/system32/wbem 目錄下。預設情況下,%windir%/system32/wbem 已經存在於系統路徑中,因此,如果您不使用安裝指令碼,就不可能遇到這個問題。或試著將將Framedyn.dll檔案從/windows/system32/wbem目錄下拷貝到/windows/system32目錄下!
方法七、您的系統出現嵌入式管理單元初始化失敗,可能是由於PATH 環境變數不包括 %SystemRoot%/System32/WBEM 檔案夾。 要解決此問題,請將 %SystemRoot%/System32/WBEM 檔案夾添加到 PATH 環境變數中。為此,請按照下列步驟操作:
1.按右鍵“我的電腦”,然後單擊“屬性”。
2.在“進階”選項卡上,單擊“環境變數”。
3.在“系統變數”下,雙擊“PATH 環境變數”。
4.在“變數值”中輸入:%SystemRoot%/system32;%SystemRoot%;%SystemRoot%/system32/WBEM。
注意:如果出現其他系統變數,請不要刪除。
5.單擊“確定”,然後單擊“確定”。