vbsedit 安裝高版本後不能使用的解決方法

qq284489030發表於2018-01-19

每次解決vbsedit 不能使用都是看這篇帖子,向貼主及評論家們致敬。

原文及回帖複製如下:http://tieba.baidu.com/p/3542613784

==========================================
問題描述 

==========================================
很多人第一次用VBSedit 5.2.4漢化綠色版時都會出現“Failed to load pdm.dll. Ensure that pdm.dll is installed on this computer.”錯誤。
▼錯誤提示框

而網上很多解決辦法並不適合開啟了UAC的Win7 (Win7開啟UAC時cmd以管理員許可權執行預設路徑會跳轉到system32),而裝一個安裝版的VBSedit就能解決這個問題了。
不過後來VBSedit更新後出現了問題,安裝了新版VBSedit後執行5.2.4會完全無法應,程式瞬間結束,即便是解除安裝新版本也是會這樣,並且5.2.4的正版軟體也一樣無法執行。於是我下定決心開始尋找解決辦法。

==========================================
解決思路 
==========================================
刪除所有相關檔案,不管用,刪除含vbsedit或Adersoft的登錄檔也不管用,只有系統還原有用。
於是在PE下發現還原備份的“C:\Windows\System32\Config\Software”這個檔案即可執行5.2.4,說明影響因素存在於登錄檔“HKEY_LOCAL_MACHINE\SOFTWARE”中。在新系統安裝新版VBSedit前後分別匯出“HKEY_LOCAL_MACHINE\SOFTWARE”下面的鍵值,用Beyond Compare進行對比並分別還原,發現刪除如下鍵值(或改名)之後5.2.4即可成功開啟。

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{82298941-BA0B-CA4D-97E6-56E9A07E8A6A}]

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{82298941-BA0B-CA4D-97E6-56E9A07E8A6A}\Implemented Categories]

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID\{82298941-BA0B-CA4D-97E6-56E9A07E8A6A}\Implemented Categories\{B76F8BED-664A-4484-F8B2-0853A0C87911}]
複製程式碼
可是當我興奮的到Win XP x64系統中實驗時卻發現,根本找不到這個鍵值,判斷這個值應該根據不同系統有變化,因此不能找固定值。
如果要找出其中的演算法(對於我)是不可能的,於是我想到監測安裝程式對登錄檔的改動,找到對應值刪除即可。
試用了安裝監視軟體並沒有意義,因為已經安裝過高版本的系統會一直存在使5.2.4不能執行的值,登錄檔沒有變化安裝監視軟體就不會記錄。
因此我用到了Sysinternals的“Process Monitor”

==========================================
解決辦法 
==========================================
今天是研究的第6天了,終於解決了VBSedit 5.2.4不能執行的問題,即便是安裝過高版本的也可以解決,首先開啟“Process Monitor”(以3.0漢化版為例)
▼點選新增過濾。

▼過濾項選擇“程式名稱”,內容填寫“uninstall.exe”,後點選新增。

▼然後新增“操作”,內容填寫“建立登錄檔鍵”(英文為“RegCreateKey”),新增到列表中。

確定後會發現主機板皮膚的Log沒有了,因為程式還沒檢測到過濾出來的的事件。
▼現在執行新版本VBSedit的安裝程式,就會出現檢測到的事件

▼找到CLSID的最後一個(注:因為5.2.4漢化是32位的,所以64位系統要找到含“Wow6432Node”的路徑)

▼跳轉到後刪除即可(圖在另一個系統裡拍的,所以路徑和上一張不一樣)

▼在安裝了6.3.2之後執行5.2.4


==========================================

求知 
==========================================
在研究出解決辦法後發現,需要刪除的登錄檔鍵值應該是在“HKEY_CLASSES_ROOT\CLSID”下,與之前的“HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CLSID”判斷有誤,但之前的那個鍵值刪除也能起作用,這就需要請教各位高手了,請問是什麼原因呢?

相關文章