VS2017編譯時,輸出窗口中文顯示亂碼


異常描述

1)今天不知道是什么原因,我自己的vs2017的開發環境編譯項目時,在輸出窗口都是亂碼,在生成事件

1>------ 已啟動全部重新生成: 項目: TestHook, 配置: Debug Any CPU ------
1>  'setlocal' �����ڲ����ⲿ���Ҳ���ǿ����еij���
1>  �����������
1>  ϵͳ�Ҳ���ָ����·����
1>  TestHook -> E:\_Del\哈哈\TestHook\TestHook\bin\Debug\TestHook.exe
1>  'setlocal' �����ڲ����ⲿ���Ҳ���ǿ����еij���
1>  �����������
========== 全部重新生成: 成功 1 個,失敗 0 個,跳過 0 個 ==========

2) 生成后事件中如下代碼:

mkdir "$(SolutionDir)aa開發測試aa\$(ConfigurationName)\Poll"

在上面的項目路徑中有中文,而且創建的文件夾也含中文,所以導致創建的文件夾也含亂碼,也就是出現中文的都是亂碼,路徑如下:

E:\_Del\鍝堝搱\TestHook\aa寮€鍙戞祴璇昦a\Debug

 3)打開之前保存的txt文件,其中中文部分也顯示亂碼。

 

解決方法

1)重置vs配置:devenv /ResetSettings

2)版本升級,從15.9.17-->15.9.45

3)修改系統cmd命令行和powershell,改變格式:chcp 936,或者65001

4)直接在生成事件中使用chcp修改字符集   參考: https://blog.csdn.net/rhddlr/article/details/109771891

 

以上方法都未解決實際亂碼的問題。

當我知道所有txt文件也都是亂碼的時候,才想起來按這個問題搜索答案,可以參考我的另外一篇文章:記事本亂碼,如何修復記事本中的中文亂碼

就是直接點擊“開始”-->“控制面板”-->“時鍾、語言和區域”-->“區域和語言”-->“管理”-->“非Unicode程序的語言”-->“更改系統區域設置”,如下圖:

 我的情況是不知道什么時候,勾選了“Beta版:使用Unicode UTF-8 提供全球語言支持(U)”,然后把前面的勾取掉,重啟系統,txt和編譯之前的項目都沒有問題了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM