2022年1月15日 星期六

禁止 WindowsUpdate 自動更新 AMD 顯示卡驅動程式

禁用 AMD 顯示卡驅動的自動更新

不知道為什麼微軟釋出的更新會直接把AMD的驅動給蓋掉,就算AMD驅動程式版本比較新,微軟也會強制把舊版的覆蓋上去。

蓋上去之後是一回事,關鍵是AMD的面板版本跟驅動版本對不上的話,AMD面板就打不開了,打不開八成是被給自動更新給搞了。


依序有三個方法選一個就可以了

方法1
對系統的影響是最小的,不過不能根治隔一段時間微軟伺服器更新版本之後應該還會再來一次。其次兩個對系統有影響不過可以治本。

方法2
鎖定硬件ID讓系統不能動,間皆導致WindwosUpdate無法更新的,不過也會導致無法更新驅動就是,要先解綁。

方法3
停用WindowsUpdate中驅動更新模塊。往後部分新安裝的設備可能有機會會動不了,要手動載驅動來裝。不會影響到安全性更新推送。
受影響的設備大概是硬體變動的時候,網路卡音卡藍芽這些。USB設備滑鼠鍵盤等內建有通用驅動絕大多數不會影響到。

方法4 
第三方軟體禁用



方法1 回復上一版驅動

最直接的辦法是按回復驅動程式,在"WindwosUpdate驅動庫"版本被更新版本之前可以安寧一陣子。


要注意的是此時電腦上會有兩個版本的驅動,AMD版與Win版,目前套用AMD版這樣。Win版要留著卡位,如果把Win版本刪除那麼自動更新將會再次起作用把它安裝回來。


友情提示:可能要重複做2次因為自動更新有2個版本
  1. 自動更新版本
  2. 選用更新版本 (不要手濺按到不會自動安裝)


簡單講就是電腦要保留 Win版本 給 WindwosUpdate 檢查用,然後選擇 AMD板 給顯示卡使用,這樣就不會造成AMD面板打不開問題了。

如果同時存在多個AMD版驅動,要看面板是哪個版本號的,兩方版號對上才能正常開啟




方法2 禁用AMD的驅動程式自動更新


透過禁用裝置ID來達到間接讓WindwosUpdate更新不了的,包含自己手動更新也會裝不了驅動,要先解掉。


下載 Powershell的批次檔 雙擊執行

載點:https://mega.nz/folder/R8NT0aLS#8AA7F4vmWqbQVRdMK0buLQ




再次去檢查更新雖然還是有但不會被更新了會出現錯誤



注意禁用之後再也無法更新或重新裝驅動,執行AMD驅動安裝會失敗(錯誤代碼: 1603),要先解除禁用才能更新。




對應的登錄檔值設定方式有點複雜這邊就只給位置而已,詳細自行把位置丟Google搜尋可以找到微軟的技術手冊。


登錄檔位置是這裡:

HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\DeviceInstall\Restrictions

直接從 PowerShell 執行的話是這兩條命令(需管理員權限):

# 禁用AMD顯示卡驅動更新
irm bit.ly/DisAMDUpdate|iex; DisableVideoDriverUpdate -Filter:Radeon

# 恢復所有設備的自動更新
irm bit.ly/DisAMDUpdate|iex; DisableVideoDriverUpdate -Recovery


程序運行邏輯

  1. 從硬體清單中搜尋 "Radeon" 字樣,找到要禁用的目標硬體,並獲取ID
  2. 將獲取的ID設置到上方的登錄檔位置


有Bug可以上原始碼存放的Github站上回報,或是在這邊留言回報。
不過程序的邏輯少到幾乎沒有應該是不會出狀況才是。





方法3 停用自動更新驅動的模組

直接停用自動更新驅動這個模塊,停用之後往後新插的部分設備可能會動不了,要手動載驅動才能動。


以下三個選一個做就可以了。


1. 命令新增登錄檔值的代碼

reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" /v ExcludeWUDriversInQualityUpdate /t REG_DWORD /d 1 /f


2. 群組原則的位置


3. 對應的登陸檔值

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate]
"ExcludeWUDriversInQualityUpdate"=dword:00000001






方法4 第三方軟體禁用



第三方的軟體,詳細使用說明可以參考作者的原文


關於禁用更新的說明在這一篇
【其他】安裝 ROPService 服務可啟用 Windows Update 自動更新並防止 GPU 硬體設備被 Windows Update 覆蓋 @電腦應用綜合討論 哈啦板 - 巴哈姆特 (gamer.com.tw)

根據這篇原作的說明,禁用的核心方法跟方法2一樣,只是多了一個在後台運行的服務監控系統行為。

受監控的項目有許多這邊列舉兩個比較重要的

  1. 當驅動被移除時會自動解鎖
  2. 當打開AMD官方安裝包時自動解鎖
  3. ...等




該選擇哪一個方案

有開發需求會經常變更驅動版本,方法4第三方即時監控可能會方便一些。不過這是優點也可能缺點,需要額外掛一個服務在背景運行。

不經常變更驅動的話,方法3安裝的時候手動開關一下也不會花費太多時間。缺點大概就是如果電腦不是只有自己在用,可能會發生驅動無法更新或是被移除後無法安裝的問題。

方法2直接禁用掉驅動模塊並不會直接干預到安裝驅動問題,不對如過有新的硬體設備被安裝可能需要手動裝驅動,會稍微麻煩一點。

方法1是最無事的不過也是最不能保證不會被騷擾,一旦微軟的驅動庫更新或是基於什麼原因,系統上檢查用的驅動被刪除又會再次被騷擾。


總結一下,如果自己有一定程度排除錯誤的能力,優先從2或3選擇可能比較好。如果是啥都不懂的小白,或許直上方法4啥事都不用考慮可能是最優解。




方法2實際運作狀況

大致的測試結果在這軟這邊會推送兩個版本的更新。

第一個版本會跟自動更新一樣權限相當不會經過你的同意就會自動更新。如果有設定手動更新可以擋住,但是當你想做安全性更新的時候無法選擇會一起更新。

第二個版本會比較新會出現在選用更新裡面,這個就算你設定自動更新也可以自己選擇要不要更,基本上不會煩到人,主要是第一個版本會擅自更新。





進入自動更新的頁面可以看到第一版已經開始更新了。





指令執行完畢之後會更不上去,像這樣的更新失敗圖。只是驅動版本沒套上去而已,實際上是已經載到系統裡面了,可以從應用程式看到版本增加了。





接著繼續把選用更新也一併跑完





結果是一樣的,出現錯誤並且又增加了第三個版本




兩個版本都跑完之後就不會再來煩你了,更新不會再次出現顯示卡的更新。不過電腦上倒是增加了兩個版本的驅動。這些版本不能砍掉,刪除之後更新會再次跳出來把驅動版本載回來。






參考

1. 【心得】Microsoft 的自動更新,未經使用者同意變更驅動程式版本 https://forum.gamer.com.tw/C.php?bsn=60030&snA=594166

2.  【心得】完全禁止 Windows更新 ( AMD 顯示卡) 設備驅動(https://forum.gamer.com.tw/C.php?bsn=60030&snA=593696




2022年1月13日 星期四

Edge 多媒體控制中心 Glodal Media Controls 失效 無法開啟使用

Edge 多媒體控制中心 Glodal Media Controls 失效 無法開啟使用


2022-01-13

這天前的更新不知道為什麼 edge 把 Glodal Media Controls 的功能拿掉了,在實驗功能整個就消失不見了,這東西超好用的說,網路上找一下是有解法,這邊簡單寫好懶人包了。

打開終端機,按下 Win+X 再按 A 。然後再輸入下面指令
有兩個方式依照自己的需求擇一執行就好

重啟 Edge 並修改桌面與開始選單的 Edge 捷徑
(讓他們啟動時自動帶有 Media Controls 的參數)

irm bit.ly/3IeentX|iex; EdgeMediaControls -Desktop -Start


執行後會直接把當前 edge 視窗全關掉(執行前記得先儲存網頁內容),並自動重啟然後就會有媒體中心功能了。

工作列圖示需要從桌面或開始選單裡,重新釘選應用程式才會起作用


最後一個是 Edge 有個加速功能,把他停用掉免得重啟後自動打開的 edge 不具備 Media Controls 。關閉的設定在這個位置
















2022年1月11日 星期二

Windows 移除 創建捷徑時 字尾的捷徑字樣

Windows 移除 創建捷徑時 字尾的捷徑字樣

按下 Win+X 再按 A 然後輸入下面指令,變更登錄檔

移除捷徑字樣

(連點三下快速選取一行)

reg add HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer /v link /t REG_BINARY /d 00000000 /f

然後重新啟動電腦,或是輸入下面指令重啟檔案瀏覽器

Stop-Process -ProcessName explorer






復原

要復原的話預設值是這樣

reg add HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer /v link /t REG_BINARY /d 15000000 /f

2022年1月10日 星期一

[Win10/Win11] 家用版 開啟本機群組原則編輯器(gpedit.msc)

[Win10/Win11] 家用版 開啟本機群組原則編輯器(gpedit.msc)

家用版預設是沒有啟用這個功能的,但其實微軟並沒有特別禁止,是能夠透過Dism事後安裝本機群組原則編輯器。



步驟1

按下 Win+X 然後再按下 A  ,會自動打開具管理員權限的終端機。
(備註:要是按不出來的話,在開始搜尋 Powershell 然後右鍵使用管理員打開也可以)


步驟2

打開之後在終端機內輸入這一行即可

irm bit.ly/InstallGpedit|iex

鍵入之後會跑安裝畫面 (文章中的指令更新了只是圖還沒更新)



安裝完畢會自動打開。也可以手動輸入 gpedit.msc 打開,或是在開始內搜尋。







2022年1月2日 星期日

修復 Windows 的 EFI/MBR 開機引導

修復 Windows 的 EFI/MBR 開機引導

引導損壞的開源命令工具 autoFixBoot,同時適用 MBR 與 GPT 兩種不同的硬碟格式。



使用方法

步驟
  1. 先把要修復的目標系統硬碟接到正常能開機的電腦上 (需要連網)
  2. 開機進系統後,從本機裡找一下目標系統在哪個曹位
  3. 在開始搜尋 Powershell 並按下右鍵使用管理員開啟,接著輸入下列命令。
# 修復 E 曹的系統引導
irm autofixboot.github.io|iex; autoFixBoot E

後面的 E 就是要修復的目標磁碟代號,也就是Windwos資料夾所在的磁碟
(如果要修復的就是當前系統,改成C即可)

過程中會跳出警告視窗,輸入 y 然後按下 Enter 即可。




備註:

  • 兩種格式 GPT(EFI) 與 BIOS(MBR) 都適用
  • 不小心把引導裝到其他硬碟的,後面改成 C 即可修復到同一顆
  • 在 GPT 磁碟下,若無引導分區會自動壓縮300M生成EFI分區
  • 在 MBR 磁碟下,若無引導分區會直接安裝引導在C曹系統曹


修復工具的邏輯

主要修復邏輯是輸入系統曹的代號之後

  1. 尋找同磁碟內是已經存在的引導分區(沒有則新建一個)
  2. 利用 bdcboot 建立開機引導


說穿了做的事情就是,自動建立開機分區(GPT/MBR),以及自動產生 bcdboot 命令並執行的工具。

邏輯上只會建立在同一個磁碟內,如果輸入的曹位是在 [磁碟3] 那麼只會搜尋 [磁碟3] 是否有開機引導,如果沒有則建立。


重複的開機引導

開機引導可以同時有很多個指向,比如說原本因為安裝失誤的關係導致開機是由 [磁碟0] 引導到 [磁碟1] 開機,那麼修復之後原本 [磁碟0] 的引導也依然有效可以開機。

當拔除磁碟 [磁碟0] 的時候只剩 [磁碟1] BIOS自然會選中 [磁碟1] 的開機引導開機到原本的系統。

所以如果是這種情況修復好就好不用管原本的開機分區了,如果真的很在意BIOS出現兩個選單的話隨意下載個磁碟管理軟體刪除不要的引導分區即可。




2021年12月29日 星期三

如何使用 Dism 安裝 Windows11

如何在外接硬碟 安裝 Windows11

tags: 部落格文章

Dism是微軟封裝Windows的程式,可以把它想像成 RAR 的意思。壓縮完畢後會變成一個 .wim 檔案,這個檔案解壓出來就是C曹剛重灌好的樣子了

所謂的安裝系統只不過是 解壓縮+建立開機引導 而已
這同時也意味著轉移系統只需要你將C曹所有檔案 Ctrl+C 複製到另一個硬碟,然後重建引導即可開機

安裝完畢開機之後系統會自動變成Windows to go狀態,大致上的區別就是有些設定值被限制了,比如說預設值是不能休眠的。


從下面開始所有指令的安裝的磁碟曹是F曹,如果你要安裝的曹位不是F,建議在磁碟管理員把他指定成F,這樣才不用修改指令。


前置任務

在開始前請先確定硬碟已經轉換成GPT格式
可以使用下面命令查詢分區格式

# F自行置換成你要安裝磁碟機代號
Get-Partition -DriveLetter "F" | Get-Disk


看到上圖表示是正確的,可以進行下一步了。

如果顯示是MBR格式,那可打開磁碟管理員,刪除所有分區之後點擊轉換。


(圖片沒有刪除且已經是GPT格式,所以才是灰色的的轉換成MBR字樣)




wim檔案的位置

wim檔案又可以稱做是系統的映象檔,這個檔案在微軟載下ISO內,點擊ISO檔案兩下掛載,然後你可以在 source 裡面發現 install.wim 檔案。

ISO檔案可以從這個網址下載:https://www.microsoft.com/zh-tw/software-download/windows11


查看映像檔資訊

一份映像檔裡面有別於剛剛說的rar壓縮包,wim檔案是可以同時包含多個版本的,解壓縮的時候要選擇版本解壓。這個步驟就跟通常安裝Windows時要讓我們選擇專業版還是家用版一樣意思。

查看的指令是(需要管理員權限)

Dism /Get-ImageInfo /ImageFile:"E:\sources\install.wim"


這邊我要安裝的是專業版,那就記下對應的編號 index:3


解壓縮

接下來把它解壓縮到目標槽位,也就是你要安裝的硬碟上

# 映像檔位置 : E:\sources\install.wim
# 安裝的版本 : 3 (Windows 11 專業版)
# 解壓縮位置 : F:\
Dism /apply-image /imagefile:E:\sources\install.wim /index:3 /applydir:F:\

等待跑完即可




建立開機引導

開機引導需要獨立的一個EFI分區,一般Windows會自動將它分配在開頭的位置。但實際上EFI的分區順序是沒有規定的,這邊為了方便操作直接從F曹切出300M來用

(指令很長連點三下可全選)

$Dri=(Get-Partition -DriveLetter "F");$Dri|Resize-Partition -Size:($Dri.size-300MB);((($Dri|New-Partition -Size:300MB -GptType:"{c12a7328-f81f-11d2-ba4b-00a0c93ec93b}")|Format-Volume)|Get-Partition)|Set-Partition -NewDriveLetter:"X"

接著寫入開機引導

bcdboot F:\windows /f UEFI /s X:\ /l zh-tw

到這邊就完成了,重啟之後UEFI選則該硬碟啟動,即可開機




掛載與卸載EFI磁碟代號

磁碟管理是沒辦法直接掛載EFI分區的,如果需要修復EFI掛載的方法如下

# 新增F曹的EFI分區磁碟代號為X
((Get-Partition -DiskNumber:(Get-Partition -DriveLetter "F").DiskNumber)|?{$_.GptType -eq "{c12a7328-f81f-11d2-ba4b-00a0c93ec93b}"})[0]|Set-Partition -NewDriveLetter:"X"

# 移除磁碟代號X
$Letter="X";(Get-Partition -DriveLetter:$Letter)|Remove-PartitionAccessPath -AccessPath:("$Letter"+":")

參考資料

Dism 修復 Windows 系統

修復 Windows 系統

系統損壞原因很多,這邊用的指令是簡單修復Windows的檔案,有時候系統BUG這個修復是有用的。

執行的方法按下 Win+X 然後在按 A 就可以打開終端機了,在終端機裡面輸入底下指令。

# 檢查有無出錯
Dism /Online /Cleanup-Image /ScanHealth
Dism /Online /Cleanup-Image /CheckHealth

# 修復
DISM /Online /Cleanup-image /RestoreHealth
sfc /SCANNOW