很多朋友都已經用上了Windows Vista,如果安裝了編號為KB933928和KB935280的兩款更新,那么可能會出現無法使用第三方主題的問題。而經過檢查后發現,涉及自定義主題更改的三個文件:shsvcs.dll、UXtheme.dll、themeui.dll,并沒有因為安裝更新導致替換失敗(如圖),它們的版本號還是原來的6000.16386……

其實,這是由于主題語言對應的語言包文件名與主題文件名的不匹配所導致,以著名的Aero 5048主題為例,主題文件夾下的視覺樣式文件名為Aero 5048.msstyles,而對應的語言包中的語言文件名為Aero.msstyles,這樣就會導致Windows Vista在加載主題的時候,無法讀取到正確的語言文件,自然就無法加載主題。至于安裝更新之前可以正常加載第三方主題,這是因為Windows Vista緩存了這些語言文件,裝載主題時并不需要從中讀取對應的語言數據,因此使用第三方主題時不會有什么問題。
解決的辦法很簡單,進入對應的語言文件夾(en-US或zh-CN),將Aem.msstyles.mui重新命名為與視覺樣式對應的文件名,本例就是將Aero.msstyles.mui更名為Aero 5048.1nsstyles.mui,然后正常使用Aero 5048主題。如果你使用的是其他的第三方主題,那么可以按照同樣的方法解決。