2022年4月4日 星期一

Windows 內建 RDP 遠端如何自訂解析度

Windows 內建 RDP 遠端如何自訂解析度

原始的UI是沒辦法自動解析度的,要自己去解析rdp檔案內容。這邊為了不要每次打開要嘛不是太小就是有卷軸很難用寫了個批次檔能自動計算出適當的解析度

載入函式庫

irm bit.ly/36tr1aS|iex

連接遠端

irm bit.ly/36tr1aS|iex; rdpConnect '192.168.3.12' -Ratio:(16/11)

其中16/11是遠端解析度的比例,整個可以刪除不打。預設16/11這個比例大概還有一定空間可以把桌面的東西拉到遠端內,算是比較好操作的比例。

如果要自動複製密碼到剪貼簿可以在第二個選項加上密碼

irm bit.ly/36tr1aS|iex; rdpConnect '192.168.3.12' 'YourPW' -Ratio:(16/11)

如果要最大化視窗則加上 -MaxWindows

rdpConnect 192.168.3.12 -MaxWindows

全螢幕則是 -FullScreen

rdpConnect 192.168.3.12 -FullScreen

如果是2K以上的螢幕有調整過螢幕縮放比例在在自行加上 -Zoom ,底下是縮放150%的範例

rdpConnect 192.168.3.12 -Zoom:1.5

最後是完全自動解析度與位置(長, 高 ,x ,y)

rdpConnect 192.168.3.12 -Define 1024 768 100 100

上面參數可以自行組合,底下兩個例子

# 在放大倍率100%的電腦上, 調整縮放比為16:11, 自動複製密碼123456
irm bit.ly/36tr1aS|iex; rdpConnect 192.168.3.12 '123456'
# 在放大倍率150%的電腦上, 調整縮放比為16:11, 自動複製密碼123456
irm bit.ly/36tr1aS|iex; rdpConnect 192.168.3.12 '123456' -Ratio:(16/11) -Zoom:1.5

2022年3月18日 星期五

Office 移除後重裝還是原本的版本 無法完全移除

Office 移除後重裝還是原本的版本 無法完全移除

筆電或是套裝健腦內附的Office再移除的時候似乎都會遇到這個問題,可能是個萬年bug吧。

解法是到微軟的網站下載專用的解除安裝程式,這個可以完整的移除不會導致用其他版本安裝仍然是同一版的問題。

載點:https://aka.ms/SaRA-officeUninstallFromPC
官方說明頁面:https://bit.ly/3IqW4RX

2022年3月12日 星期六

Powershell 的編碼問題 CodePage 如何更改

Powershell 的編碼問題 CodePage 如何更改

CodePage 如何更改

這個有分兩個終端機,一個是 Windwos11 的 Terminal 跟傳統介面的 PowerShell。基本上沒區別。只是 Terminal 沒辦法看右鍵內容看 Code Page 了,但是不影響變更的方法。

右鍵內容可以看到的 Code Page 也就是下圖這個


這是綁死跟著 Windwos 系統的 Encoding 的,沒有辦法變更除非到控制台內更改整台電腦的 Encoding 編碼,副作用可能有點大建議是不要。



另一個辦法是從終端機下手,可以暫時修改 Encoding 下次重開會被恢復。

總共要改三個變數,可以用一行連續等於同時變更

# 修改為日文 SHIFT-JIS
$OutputEncoding = [console]::InputEncoding = [console]::OutputEncoding = [System.Text.Encoding]::GetEncoding(932)

# 修改為日文 UTF-8
$OutputEncoding = [console]::InputEncoding = [console]::OutputEncoding = [System.Text.Encoding]::GetEncoding("UTF-8")

到這一步就可以正確的解碼了,測試的方式可以打這行把日文複製到剪貼簿。

"このように日本語が化けています。"|clip

然後再直接貼上,如果沒有變成亂碼就是正常了。




讀寫檔案

只不過還要注意一個坑是有些函式比如說 Get-Content 預設是認系統 Encoding 而不是終端機的。

而且在 Pwsh5 中是無法變更的其他語系的,只能變更成帶BOM的UTF-8,和其他少數幾個。替代的方案是使用 .Net 的函式,才能正確的讀寫 UTF-8 或其他語系的檔案。

或是乾脆升級到 Pwsh7 可以解決這個問題 Get-Content 預設是 UTF-8 且能夠自由設置其他語系的編碼。

# 編碼
$Enc_Default = [Text.Encoding]::Default
$Enc_UTF8_BOM = [Text.Encoding]::GetEncoding("UTF-8")
$Enc_UTF8 = New-Object System.Text.UTF8Encoding $False
$Enc_BIG5 = [Text.Encoding]::GetEncoding(950)
$Enc_SIFT = [Text.Encoding]::GetEncoding(932)

# 讀寫檔案
$Encoding = $Enc_UTF8
[System.IO.File]::ReadAllLines($Path, $Content, $Encoding);
[System.IO.File]::WriteAllLines($Path, $Content, $Encoding);

關於讀寫文件詳細可以看這篇的說明
https://charlottehong.blogspot.com/2021/04/powershell-bom-utf-8.html




打開 PowerShell 自動執行變更代碼

這個可能是對系統侵害性比較小的作法,從 ProFile 檔案設定每次開啟時自動執行。

if (!(Test-Path -Path $PROFILE )) { New-Item -Type File -Path $PROFILE -Force }notepad $PROFILE

如果不存在的話會自動建立,然後把剛剛那個連續三個等於的貼上存檔即可。啟動的時候會自動執行這份文件中的代碼。





2023 Windows11 開機免密碼自動登入 (有登入微軟帳號也可以)

登入微軟帳號後如何保持開機免輸入密碼

教學包含下列兩點,適用於新板 Windows10 與 Windows11

  1. 取消喚醒時需要密碼
  2. 取消開機時需要密碼


netplwiz 的選項消失沒有了

netplwiz 沒有「必須輸入使用者名稱和密碼,才能使用這台電腦」,選項消失了。

新版的 Windows 這個功能已經被隱藏了netplwiz 沒有這個選項。預設要先修改登錄檔才可以開機選項。這邊有寫好批次檔可以直接執行就好了,詳細步驟如下。


按下 Win+X 再按 A 打開終端機,然後輸入

irm bit.ly/netplwiz|iex; netplwiz


再來在終端機輸入 netplwiz 打開使用者帳戶頁面
並取消上方的必須輸入使用者名稱選項的打勾



按下套用之後會要求你輸入帳號與密碼照著輸入即可,重新開機後就會自動登入了




鎖定後不要要求重新輸入密碼

最後一個關卡是電腦待機喚醒後還會需要你輸入密碼,這邊從設定裡面把它取消掉,參考下面的圖設定即可。



Windows10



Windwos11




如此一來操作體驗相當於沒有密碼了,除非是手動按下Win+L鎖定之外不會有其他情況還需要重新輸入密碼解鎖了。




2022年3月3日 星期四

Windwos11 家用版 如何啟用本地帳號不要登入微軟帳號

Windwos11 家用版 如何啟用本地帳號不要登入微軟帳號

新版的Windows11強制要登帳號才能OOBE(初始化電腦),不想燈帳號的人就搞得很麻煩,這邊提供一個簡單的解決辦法———拔網路線。

對沒錯拔掉就好,不過要先進入打帳號的頁面才拔,在此之前要先聯網才能進來從一開始就沒連網是沒辦法的要用別的手段跳過。

這邊用打指令的方式模擬拔線,實際上打指令跟拔線是一樣效果。

(按下 SHIF+F10 可以叫出終端機)

ipconfig /release








2022年2月28日 星期一

[2022/2] Line將不再支援 Windows7 和 8。請按以下連結下載最新兼容版本

Line將不再支援 Windows7 和 8。請按以下連結下載最新兼容版本



之前有一版會導致字體大小異常,那時候暫時的解決辦法是打勾支援win7會好。這個bug早就修好了可以不勾也沒關係。

不過當初有這樣設定過的話,現在這一版會卡上圖的bug,重裝之後第一次啟動會好但是關掉重開就又一樣了。

解決辦法,把相容於Win7取消打勾就好。





2022年2月25日 星期五

刪除 Windows 多餘開機選單 調整開機順序。BCD選單操作大全懶人包。

刪除 Windows 多餘開機選單 調整開機順序。BCD選單操作大全懶人包。

最常遇到的大概就是安裝的時候不小心忘記拔其他硬碟,導致開機選單混在一起了,即便重灌後之後舊硬碟也殘留一個選單。

如何不重灌把開機選單移動到同一顆硬碟可以參考這篇
https://charlottehong.blogspot.com/2022/01/efi.html

刪除 BCD 表

首先打開終端機:按下 Win+X 然後再按 A。

然後輸入以下的指令即可

# 查看當前開機選單
irm bit.ly/3IkqdmO|iex; BCD_Editor -Info

# 刪除2號選單
irm bit.ly/3IkqdmO|iex; BCD_Editor -Delete 2




基本知識

大概簡單科普一下BCD表,一顆硬碟通常會有一份BCD表,這張表裡面可以添加各個系統的位置。通常會存在Windows分割時產生的 100M 分區裡面。

新版的UEFI在設定裡面會看到 Windows Boot Manager 這指的某顆硬碟的EFI分區裡面的BCD表。而傳統的BIOS+MBR只會看到硬碟型號一樣會指向該硬碟的100M裡面的BCD表。

整個流程是這樣的,從 UEFI/BIOS 先選擇 BCD 表,然後系統開進去 BCD 表後,再選擇要引導到哪個分區的系統。




操作BCD選單 - 詳細

首先打開終端機:按下 Win+X 然後再按 A。
接著從下面選擇你要的指令。

# 查看當前開機選單
irm bit.ly/3IkqdmO|iex; BCD_Editor -Info

# 設置開機選單時間
irm bit.ly/3IkqdmO|iex; BCD_Editor -Times:1

# 刪除2號選單
irm bit.ly/3IkqdmO|iex; BCD_Editor -Delete 2

# 設置2號為預設
irm bit.ly/3IkqdmO|iex; BCD_Editor -Default 2
# 修改2號選單的描述
irm bit.ly/3IkqdmO|iex; BCD_Editor -Description 2 "Windows CHG"

# 移動2號選單到最頂部
irm bit.ly/3IkqdmO|iex; BCD_Editor -MoveToFirst 2
# 移動2號選單到最底下
irm bit.ly/3IkqdmO|iex; BCD_Editor -MoveToLast 2



操作其他硬碟的BCD選單 - 詳細

主要的操作跟上面一樣,就是追加一個PATH的參數修改其他曹位的BCD檔案,這邊要注意的是EFI分區跟MBR分區的路徑不一樣,而且需要你手動掛載才能讀取。

# 查看其他曹位(MBR)
irm bit.ly/3IkqdmO|iex; BCD_Editor -Info -Path:"B:\Boot\BCD"

# 查看其他曹位(EFI)
irm bit.ly/3IkqdmO|iex; BCD_Editor -Info -Path:"B:\EFI\Microsoft\Boot"