win10-10586系統打開組策略出現問題的解決方法

電腦本來是win10-10240,在線升級到1511(10586)後,開啟組策略會報錯,內容如下

命名空间Microsoft.Policies.Sensors.WindowsLocationProvider已经被定义为存储中另一文件的目标命名空间.

文件

C:\WINDOWS\PolicyDefinitions\Microsoft-Windows-Geolocation-WLPAdm.admx. 行5 . 列110

图片

在網上搜索到有百度經驗裡的方式是不起作用的,後來看到微軟官網有類似的KB提供,參考裡面的方式處理就可以解決,微軟裡有提到要刪除問題,我先是改名字,結果是不行的,必須把文件刪除或者剪切到其他的位置才可以。

微軟的KB頁面是

https://support.microsoft.com/zh-tw/kb/3077013

原因為

LocationProviderADM.admx 檔案已重新命名為 Microsoft-Windows-Geolocation-WLPAdm.admx 中 Windows 10 RTM,就會發生這個問題。
狀況1
.Admx 檔案從 Windows 10 複製所在的 Windows 較早版本的 LocationProviderADM.ADMX 檔案的中央存放區之後,有兩個包含相同的設定,但具有不同名稱的.admx 檔案。這樣會觸發 「 尚未定義命名空間 」 的錯誤。
狀況2
當從 Windows 10 RTM 升級到 Windows 10 版本 1511年時,新的 LocationProviderAdm.admx 檔案會複製到資料夾,同時仍保留舊的 Microsoft Windows Geolocation-WLPAdm.admx 檔。因此,有兩個 ADMX 檔案該位址相同的原則命名空間。

 

所以新版1511的系統已經不會使用Microsoft-Windows-Geolocation-WLPAdm.admx這個名字了,而是改用LocationProviderAdm.admx,所以就算我們把系統裡面的LocationProviderAdm刪除,然後將Microsoft-Windows-Geolocation-WLPAdm改名為LocationProviderAdm即可。

 

就在管理員權限的CMD中執行

takeown /F”C:\Windows\PolicyDefinitions\Microsoft-Windows-Geolocation-WLPAdm.admx”/A

takeown /F”C:\Windows\PolicyDefinitions\en-US\Microsoft-Windows-Geolocation-WLPAdm.adml”/A

takeown /F”C:\Windows\PolicyDefinitions\LocationProviderAdm.admx”/A

takeown /F”C:\Windows\PolicyDefinitions\en-US\LocationProviderAdm.adml”/A

 

此處的en-US要對應你的系統版本語言,比如簡體中文就是zh-CN,你可以先行到系統這個位置看對應的名稱

這個是因為這幾個文件操作需要trustedinstaller權限,系統的管理員權限還是不夠,當然也可以用其他的方式,最後再提供,有足夠的權限後,

1;將LocationProviderAdm.adml和LocationProviderAdm.admx剪切到別的位置上。

2;將Microsoft-Windows-Geolocation-WLPAdm.adml和Microsoft-Windows-Geolocation-WLPAdm.admx改名為LocationProviderAdm.adml和LocationProviderAdm.admx。

 

再重新開啟gpedit.msc,就會發現已經不會提示錯誤了

 

要提升權限到trustedinstaller,有特別的方式,可以將下面代碼粘貼到記事本當中,然後保存為reg文件,執行導入到註冊表當中,就可以在滑鼠右鍵添加提升權限的功能,在需要提升權限的檔案或者資料夾右鍵點”獲取trustedinstaller權限”就可以了。