acgmd.dll ARX命令中發(fā)生異常,打開事件查看器提示MMC無法創(chuàng)建管理單元的解決思路
最近遇到一個問題,打開autocad2023提示“acgmd.dll ARX命令中發(fā)生異?!?。

本想打開事件查看器看有無相關的錯誤日志,結果事件查看器也打不開,提示:
MMC無法創(chuàng)建管理單元。此管理單元可能沒有正確安裝。
名稱:事件查看器
CLSID:FX:{b05566ad-fe9c-4363-be05-7a4cbb7cb510}

如果說只是autocad2023出問題,可以考慮windows功能里取消勾選.Net Framework 3.5重啟再勾選上,但事件查看器并不依賴默認不啟用的.Net3.5。
實際上也嘗試過取消勾選了,但重啟后.Net 3.5還是勾選狀態(tài),cbs.log日志里一堆錯誤。
考慮文件或注冊表權限有問題,但用procmon監(jiān)控打開事件查看器時結果為Access Denied的日志,并沒有發(fā)現(xiàn)什么可疑的。

遇到疑難的系統(tǒng)雜癥,有個比較無腦的解決方法,就是用原版系統(tǒng)鏡像升級安裝修復,可以解決大部分系統(tǒng)問題。

哈,然后問題來了。已經(jīng)升級安裝過了,上面的錯誤居然還存在!?。‰y不成升級安裝還漏掉了什么系統(tǒng)文件或注冊表沒修復?
再次用Procmon分析打開事件查看器時的Load Image事件,對比正常系統(tǒng):

發(fā)現(xiàn)從sxs.dll開始,跟正常系統(tǒng)有點不一樣。于是選中sxs.dll,去掉Load Image過濾器,從sxs.dll往下一一對比,找到可疑點:

那就是故障電腦的mmc.exe在讀取machine.config時,一下子就提示END OF FILE。Detail里也可以看出文件大小為0。于是右擊Jump To...到文件位置,用記事本編輯該文件,發(fā)現(xiàn)文件內(nèi)容是空的!??!

這個文件出問題時,可以用同目錄的machine.config.default替換。于是復制一個machine.config.default副本,改名machine.config。
然后事件查看器奇跡般打開了!打開autocad 2023也沒錯誤提示了!

本篇到此結束,有興趣的自己研究。