電腦本來是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權限”就可以了。
1 2 3 4 5 6 7 8 9 10 11 12 |
Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\*\shell\runas] @="獲取TrustedInstaller權限" [HKEY_CLASSES_ROOT\*\shell\runas\command] @="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F" "IsolatedCommand"="cmd.exe /c takeown /f \"%1\" && icacls \"%1\" /grant administrators:F" [HKEY_CLASSES_ROOT\Directory\shell\runas] @="獲取TrustedInstaller權限" "NoWorkingDirectory"="" [HKEY_CLASSES_ROOT\Directory\shell\runas\command] @="cmd.exe /c takeown /f \"%1\" /r /d y && icacls \"%1\" /grant administrators:F /t" "IsolatedCommand"="cmd.exe /c takeown /f \"%1\" /r /d y && icacls \"%1\" /grant administrators:F /t" |