VSが奇妙なISOの代わりにUnicodeを常に使用するように強制する方法はありますか?csharpプロジェクト(Visual Studio/msbuildマシン)でソースファイルのエンコーディングを変更する方法は?
Vista(Visual Studio 2008)を使用してwinappのcsprojectに取り組んでいます。この問題は、Windows Server 2003(英語のロケール)でプロジェクトをビルドしたときに表示され、ポーランド語の発音区別記号がなくなったときに表示されます。
この問題は、不適切なソースファイルのエンコードが原因で発生していることが調査されました。ソースファイルがUTF-8エンコーディングを使用していないようです。
私は数分前にそれを理解しました。私は 'UTF-with-BOM'を使ってテスト用に1つのファイルを保存し、いくつかの無効な文字列を修正しました。すべてのソースに対してUTFを使用するためのVisual Studioの設定はありますか?数百のファイルを手動で変更するのは本当にばかげている。 – tomo
しかし、回避策があります。たとえば、コンピュータの地域設定をたとえば英語などに設定して、別のエンコーディングを使用するVisual Studioを入手できます。これにより、VSは「Unicode UTF-8-Codepage 65001」ではなく「Western European - Codepade 1252」を使用するよう強制されます。再度、これはExpress版で動作し、私は完全なアプリケーションでそれが確実になると確信しています。 – ruslander
この回避策は私を満足させるものではありません。私は、コンピュータの地域設定を目的に合わせて行うように設定しました。 CP 1252への切り替えもオプションではありません。明示的にCP65001を設定したいと思います。 私は研究に時間を費やしましたが、VS 2008のテンプレートはうまくいきました。それらはすべてBOM付きのUTF-8です。すべての悪の原因は、外部コンポーネントの生産者からの不正なコーダーのテンプレートです。 ASP.NET MVCの最近のリリースでもこの問題が発生しています。 – tomo