アプリケーション構成ファイルのエンコーディングを変更した場合に発生する問題について

こんにちは、Visual Studio サポート チームです。

今回は、アプリケーション構成ファイル (***.exe.config) のエンコーディング設定を変更した場合に発生する問題と対処方法についてご案内します。

 

現象

アプリケーション構成ファイル (***.exe.config) のエンコーディングを Shift-JIS などに変更してアプリケーションを実行すると、以下のようなエラーが発生してアプリケーションの起動に失敗します。

 

Visual Studio からは、次の手順で App.config のエンコーディングを変更することができますが、既定値から変更した場合は上記のようなエラーが発生する可能性があります。

 

手順 :
  1. ソリューション エクスプローラーで App.configを選択します。
  2. プロパティ ウィンドウの [エンコード] で “日本語 (シフト JIS)” に設定して保存します。

※ なお、Visual Studio ホスティング プロセスを介してアプリケーションが起動されている場合は、上記のエラーは発生しません。

 

 対処

App.config のエンコーディングに Uft-8、または Utf-16 を使用することでエラーの発生を回避することができます。

"Unicode" - <?xml version="1.0" encoding="utf-16" ?>

"Unicode (UTF-8)"  - <?xml version="1.0" encoding="utf-8" ?>

<ご参考>

アプリケーション構成ファイルなどの .NET Frameworkで使用可能な構成ファイルの詳細については、以下のドキュメントをご参照ください。

構成ファイルを使用してアプリを構成する方法
https://msdn.microsoft.com/ja-jp/library/1xtk877y(v=vs.110).aspx