作者pleaselouis (LOUISN)
看板C_Sharp
標題[問題] C# 使用PowerShell指令 卻出現亂碼
時間Thu Jul 21 11:55:41 2022
我在檔案總管 選擇: 檔案->開啟 Windows PowerShell 然後輸入指令 wsl -l -v
視窗會輸出以下的資訊
PS D:\WSL Manager> wsl -l -v
NAME STATE VERSION
* Ubuntu Stopped 2
PS D:\WSL Manager>
但是如果我在VC# 裡面寫CODE:
PowerShell PowerShellInstance1 = PowerShell.Create();
var cmd01 = "wsl -l -v";
PowerShellInstance1.AddScript(cmd01);
foreach (PSObject result in PowerShellInstance1.Invoke())
{
infoRichTextBox.AppendText(result.ToString() + "\n");
}
在 infoRichTextBox.AppendText(result.ToString() + "\n"); 這一行定中斷 會看到
result變數裡面存的是亂碼
" \0 \0N\0A\0M\0E\0 \0 \0 \0 \0 \0 \0S\0T\0A\0T\0E\0 \0 \0 \0 \0 \0 \0 \0 \0
\0 \0 \0V\0E\0R\0S\0I\0O\0N\0"
請問有人知道是怎麼回事嗎?? 我Google了很久 但是沒有找到解決辦法 請麻煩大家給我
意見 謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 60.248.95.103 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/C_Sharp/M.1658375743.A.05A.html