2025年9月5日 星期五

Visual Studio 2022 清除專案同時清空bin/obj資料夾

 在專案.csproj檔新增

<Project>

...

  <!-- #region 清理 bin 和 obj 資料夾 -->

  <Target Name="CleanBinObjFolders" AfterTargets="Clean">

<!-- Remove obj folder -->

    <RemoveDir Directories="$(BaseIntermediateOutputPath)" />

    <!-- Remove bin folder -->

    <RemoveDir Directories="$(BaseOutputPath)" />

  </Target>

  <!-- #endregion -->

</Project>


參考來源:How to fully clean bin and obj folders within Visual Studio?

Dev Drive vs RamDisk

純個人體感,RamDisk勝!


Windows form專案,在Dev Drive編譯,未開啟Microsoft Defender,
時不時會繞圈圈甚至卡死必須重啟Visual Studio;

用RamDisk(AIM Toolkit,新版ImDisk Toolkit),編譯過程絲滑,
單元測試也是亳無卡頓。


目前使用方法:

1.原始碼本地備份儲存在D:\Workspace。

2.開機時會複製至R:\Workspace(RamDisk)。

3.關機時會同步回D:\Workspace。

4.為避免當機等意外造成進度消失,在開發過程須上傳到版控主機。


網友AIM Toolkit使用心得:AIM Toolkit(ImDisk Toolkitの後継)がリリースされたので使ってみた

2025年9月2日 星期二

Visual Studio 2022偵錯所選擇的專案

 預設是偵錯設為啟動專案的專案,

如果要直接偵錯在方案總管所選擇的專案,

可在快捷鍵設定,

1.進入工具(T)>選項(O)...>環境>鍵盤

2.尋找"啟動新的執行個體",再將快捷鍵F5綁定即可。



Visual Studio 2022在方案總管直接打開Windows Terminal

因為內建終端機快捷鍵與Visual Studio共用,當安裝Clink(擴充cmd.exe功能)時,
像Ctrl+K(刪除游標後所有字元)會被當成快捷鍵的組合鍵而無效。

可以改在Windows Terminal以解決這個問題。

1.進入工具(T)>選項(O)...>環境>終端

2.新增設定檔,並設為預設
名稱:Windows Terminal
殼層位置:C:\Windows\System32\cmd.exe
引數:/c wt.exe -d .\








3.在方案總管任一位置按右鍵>在終端機中開啟,
即會在對應路徑打開Windows Terminal。

2025年8月22日 星期五

Claude Code在VSCode終端機多行輸入及多Profile快捷鍵問題及解法

環境

Windows 11 24H2
VSCode 1.103.1


1. 多行輸入

問題:執行/terminal-setup後,按Shift+Enter每行都以一個多餘的"\"結尾。





解決方法:參考網友的設定。

"\\\r\n"改成"\u001B\u000A"即可正常運作。


2. 多個設定檔

問題:切換到其他設定檔後,即使執行/terminal-setup也無法使捷徑生效。

原因:不同的設定檔引用了各自的keybindings.json。

解決方案:

1.首先複製快捷鍵配置

%USERPROFILE%\AppData\Roaming\Code\User\keybindings.json。

2.然後切換到新的Profile,按下Ctrl+Shift+P,執行Open Keyboard Shortcuts (JSON),

並將複製的快捷鍵配置貼上到該Profile的keybindings.json。


或將該Profile的快捷鍵改成與預設Profile共用。



2025年8月6日 星期三

在資料夾右鍵新增"在終端中開啟"(WindowsTerminal)

將以下內容另存.reg檔,修改[WindowsTerminal路徑(以兩個反斜線區隔)]並匯入登錄檔:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Directory\shell\wt]
@="在終端中開啟"
"Icon"="\"%USERPROFILE%\AppData\Local\Microsoft\WindowsApps\wt.exe\""

[HKEY_CLASSES_ROOT\Directory\shell\wt\command]
@="\"%USERPROFILE%\AppData\Local\Microsoft\WindowsApps\wt.exe\" -d \"%V\""

2025年6月12日 星期四

取得測試專案路徑

場景:

被測試專案組件有以下敘述:

Path.Combine(Path.GetDirectoryName(Assembly.GetEntryAssembly().Location) ?? throw new NullReferenceException(), fileName)

專案本身啟動能正常執行,但因為測試專案無法取得被測試專案的Assembly.GetEntryAssembly().Location(組件路徑,通常是被測試專案的bin目錄)而拋出NullReferenceException。


解法:

改寫為以下敘述取得測試專案路徑即可正常測試。

Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), fileName)