2023年1月22日 星期日

禁止 Microsoft Edge 擅自在桌面建立捷徑

禁止 Microsoft Edge 擅自在桌面建立捷徑

近期改版之後Microsoft Edge似乎在每次瀏覽器更新後都會創建桌面快捷,如果原本就有在桌面放捷徑倒是沒影響,個人習慣是放到工作列之後就刪除桌面捷徑了,每次更新完都會自己冒出來實在是有點煩。


禁止更新時在桌面建立捷徑

先按下 Win+X 然後再按下 A ➔ 打開終端機,然後輸入以下的代碼

reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\EdgeUpdate" /v "CreateDesktopShortcutDefault" /t REG_DWORD /d 0 /f


然後就完事了,會看到底下執行成功的信息






參考






2023年1月20日 星期五

PowerShell 如何轉換絕對路徑 ( GetFullPath()函式錯誤路徑跑到C曹 )

PowerShell 如何轉換絕對路徑 ( GetFullPath()函式錯誤路徑跑到C曹 )

有常在寫腳本的應該經常遇到莫名其妙路徑錯誤的問題,其中一個很大的坑就是C#的路徑有時候未必會跟當前工作目錄一樣

如何獲取C#的路徑可以使用這個函式獲取

PS1 檔案

[IO.Directory]::GetCurrentDirectory()

BAT檔案

powershell.exe -nop "[IO.Directory]::GetCurrentDirectory()"
pause

下面舉例幾種情況來說明什麼時候會遇到不同步問題,如果沒有注意到可能當下就直接報錯了,然後莫名其妙不知道怎樣

要重現這個bug在啟終端機之後利用cd切換目錄然後再執行 [IO.Path]::GetFullPath(".\") 就會看到路徑錯了


工作路徑與C#同步的情況

下面取幾種情境來說明預設的C#預設路徑會跟工作路徑一樣的情況

  1. 按住Shift然後在資料夾背景按右鍵在這裡開啟
  2. 直接按右鍵在終端機開啟
  3. 在Bat檔案中呼叫PowerShell (Win10 21H1)

工作路徑與C#不同步的情況

  1. 打開終端機之後使用cd切換到其他目錄
  2. 在Bat檔案中呼叫PowerShell (Win10 1909)


* Win10版本問題我不確定具體是哪一版改的,在舊版本執行採過坑,喵的找了好久才發現...



如何正確獲取絕對路徑

這邊有幾個方法可以處理

第一個是一行可以處理的,利用Combine函式把相對路徑跟當前工作目錄組合在丟進去GetFullPath修正其他可能遇到的Bug路徑。

$Path = [IO.Path]::GetFullPath([IO.Path]::Combine((Get-Location -PSProvider FileSystem).ProviderPath, $Path))


第二個方法是直接把C#變更成當然工作目錄,這樣就不會遇到路徑不同步組出奇怪的絕對路徑了

[IO.Directory]::SetCurrentDirectory(((Get-Location -PSProvider FileSystem).ProviderPath))
$Path = [IO.Path]::GetFullPath($Path)


第三個方法是用PowerShell內建的函式,不過有個很現實的問題是這個函式必須檔案真實存在才可以轉,如果不存在會報錯

$Path = Convert-Path $Path




2023年1月9日 星期一

電腦版 Line 如何禁止自動更新

電腦版 Line 如何禁止自動更新

更新頻繁可能也有人跟我一樣討厭時不時開起來就給自動更新一下,這邊提供一個方法可以禁用Line的自動更新。




懶人包程式

先按下 Win+X 然後再按下 A ➔ 打開終端機,然後輸入以下的代碼

irm bit.ly/LineMute|iex; LineUpdate -Disable

這個執行完就會禁用了


復原的話參考這個指令

irm bit.ly/LineMute|iex; LineUpdate -Enable




以下是手動操作的方法



Line資料夾位置

程式檔案位置在這個地方,看起來不像路徑不過實際上可以直接貼上資料夾前往的

%UserProfile%\AppData\Local\LINE\bin


貼上前往之後會看到像這樣的檔案



其中裡面的 LineUpdater.exe 是自動更新的程序,數字的資料夾是Line本體,會有很多個是因為更新的時候就版的不會刪除。

如果不是像上圖這樣,看不到 LineUpdater.exe 檔案或是副檔名的話,需要到檢視裡面打開【副檔名、隱藏檔案】兩個選項。



預設會讀取版本號最大的資料夾,所以如果要切換版本只留自己要的版本號然後正常的啟動Line就可以了。

其中要下手的程式 LineUpdater.exe 這個直接砍掉的話,啟動的時候會自動載回來的所以要做一點處理才可以阻止更新。



刪除更新程式

再來刪除 LineUpdater.exe 這個檔案,然後建立一個空白txt文件,把名字改成跟原本一樣的,包含副檔名。



然後對這個檔案按右鍵內容,把【唯讀、隱藏】兩個都打勾按下確定。如此一來Line就不會在啟動檢查時把原本的假檔案覆蓋掉了。





確認是否成功禁止

進入Line的設定裡面,然後打開Line情報,看到檢查更新卡住沒有顯示最新版本就是成功了。




如何復原

LineUpdater.exe 這個程式啟動檢查更新的時候會自動下載回來的,只要把做的假檔案刪除再重新啟動Line就可以復原了。









2023年1月6日 星期五

輸入法設定 預設使用日文 針對每個視窗使用不同的輸入法

輸入法設定 預設使用日文 針對每個視窗使用不同的輸入法

針對不同視窗使用不同輸入法,這個原本在Win7是預設的到了Win10之後拿掉變成選項了。簡單說就是在A程式是A輸入法,打開新的B程式也會自動繼續維持A輸入法。

有個問題大概就是打密碼不方便吧還得記得切一下,不過後來仔細想想覺得反而造成每次都要重切中文輸入法好像也沒比較好。

打個文章記錄一下位置每次要找都找好一段時間






2022年12月21日 星期三

2023 [Win11/Win10] 家用版如何停用自動更新? 不用第三方軟體

2023 [Win11/Win10] 家用版如何停用自動更新?  不用第三方軟體

家用版就算禁用服務也會在一時間之後又自己悄悄開啟。而就算手動安裝從 gpedit.msc(群組原則) 下手,基本上就是一點反應也沒有。

有嘗試過的人大概知道上面再講什麼XD


如果只是不想被自動升級到Win11,而不是禁用整個安全性更新可以參考這篇處理
CHG: 【禁止自動更新下載Win11】不想升級如何停留在Win10



打開終端機

操作是用命令的方式設置的,不過不用怕只是貼上一行並按執行而已


對於Win10可以用快捷鍵啟動

  1. 先先按下 Win+X 然後再按下 A ➔ 會自動打開終端機



新版 Win11 因為沒有快捷鍵換個方式開

  1. 對著開始(微軟標誌)按右鍵
  2. 然後選擇 終端機(系統管理員)



停用自動更新:: 方法1

這個是直接調整延遲更新的上限,除限制後就隨便調整了相當於禁用更新了。


調整設定裡圖形介面的暫緩上限 (天數自行調整)

# 設定暫緩更新的範圍上限到 90 天
irm bit.ly/SetWinUpd|iex; Set-WUPauseMax 90

# 復原暫緩更新的範圍上限設置
irm bit.ly/SetWinUpd|iex; Set-WUPauseMax -RestoreDefault



這個只是解除上限而以並沒有實際延緩更新,設定完畢之後需要自行到設定裡面延緩更新,或是接著執行下面的命令調整

暫緩更新 (天數自行調整)

# 暫緩更新 90 天
irm bit.ly/SetWinUpd|iex; Set-WUPause 90

# 復原暫緩更新設置
irm bit.ly/SetWinUpd|iex; Set-WUPause -RestoreDefault





停用自動更新:: 方法2

這個是比較強力的手段在緩存資料夾生成一個假檔案,藉此阻止系統下載更新。

irm bit.ly/StopWinUpdate|iex; StopWinUpdate -Stop



復原就把那假檔案砍掉就好了,對應的恢復代碼

irm bit.ly/StopWinUpdate|iex; StopWinUpdate -Default



方法2停用後的狀況

Win10 測試結果



手動啟動服務的話會跳這個訊息,錯誤 0x80070003: 系統找不到指定的路徑。



Win11測試結果



手動啟動服務







2022年12月18日 星期日

【免重灌】Windows 專業版降家用版

【免重灌】Windows 專業版如何降級回家用版

升級可以參考這篇 https://charlottehong.blogspot.com/2019/02/win10.html

降級比較麻煩沒辦法直接降回去,直接保資料覆蓋安裝就好,這邊提供的方法是可以直接在Windwos上操作的,就像安裝應用程式一樣下一步到就可以了。

使用者資料和應用程式都會保留下來,不會有變動。


修改登錄檔數值

先從登錄檔把版本號改成 Windwos Home 版本,藉此來欺騙微軟官方的軟體強制安裝自己所需要的版本

按下 Win+X 然後再按下 A ➔ 打開終端機。然後輸入底下的代碼按Enter


1. 將登錄檔設置成家用版 (要降回去的)

reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v "EditionID" /t REG_SZ /d "Core" /f
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v "ProductName" /t REG_SZ /d "Windows 10 Home" /f 


2. 將登錄檔設置成專業版 (要升級的話)

reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v "EditionID" /t REG_SZ /d "Professional" /f
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion" /v "ProductName" /t REG_SZ /d "Windows 10 Pro" /f 


設置好登錄檔之後安裝的時候就會自動選所需的版本安裝了。




覆蓋安裝 Windows

再來需要載官方的媒介來升級,用ISO安裝也可以

這邊示範是用MediaCreationTool

微軟官方載點
https://www.microsoft.com/zh-tw/software-download/windows10

進去之後點擊”立即下載”下載工具



安裝

再來安裝基本上就是下一步按到底




這邊下載可能要等一陣子


安裝按下去就開始重新安裝了,時間會比較久跑完會自動重啟到桌面。


2022年12月17日 星期六

Windwos7 無法安裝 VMTool 如何解決

Windwos7 無法安裝 VMTool 如何解決

似乎單純只是少更新補釘而已補丁的名字是
windows6.1-kb4474419-v3-x64_b5614c6cea5cb4e198717789633dca16308ef79c.msu

這個安裝好就可以正常安裝VM的驅動了,找不到可以參考這邊備份載點
https://mega.nz/folder/1okm0LIA#dIQPQ6duhJ4gPFPV-pkUWQ