📢 Webサイト閉鎖と移転のお知らせ
このWebサイトは2026年9月に閉鎖いたします。
新しい記事は移転先で追加しております。(旧サイトでは記事を追加しておりません)
細 Wiki がページ「スタートアップ設定スキーマ(C Sharp)」を「アプリケーション構成ファイル(C Sharp)」に、リダイレクトを残さずに移動しました |
|||
| (同じ利用者による、間の11版が非表示) | |||
| 1行目: | 1行目: | ||
== 概要 == | == 概要 == | ||
アプリケーション構成ファイルは、アプリケーション固有の設定が記述されたXML形式のファイルである。<br> | |||
これは、様々な設定を変更する時に使用し、実行するアプリケーションの*.exeファイルと同じフォルダに*.exe.configファイルとして存在する。<br> | |||
<br> | |||
アプリケーション構成ファイル内のスタートアップ設定スキーマは、<br> | |||
アプリケーションを実行する必要のある共通言語ランタイム(以下、CLRとする)のバージョンを指定する。<br> | |||
<center> | <center> | ||
{| class="wikitable" | {| class="wikitable" | style="background-color:#fefefe;" | ||
|- | |- | ||
! 要素 ! | ! style="background-color:#66CCFF;" | 要素 | ||
! style="background-color:#66CCFF;" | 説明 | |||
|- | |- | ||
| <requiredRuntime> || .Net Framework1.0の共通言語ランタイムのみがアプリケーションでサポートされることを指定する。<br>.Net Framework1.1でビルドされたアプリケーションは、<supportedRuntime>要素を使用する。 | | <requiredRuntime> || .Net Framework1.0の共通言語ランタイムのみがアプリケーションでサポートされることを指定する。<br>.Net Framework1.1でビルドされたアプリケーションは、<supportedRuntime>要素を使用する。 | ||
| 18行目: | 23行目: | ||
アプリケーションがサポートするCLRのバージョンとオプションで.NET Frameworkのバージョンを指定する。<br> | アプリケーションがサポートするCLRのバージョンとオプションで.NET Frameworkのバージョンを指定する。<br> | ||
<br> | <br> | ||
==== 構文 ==== | |||
<supportedRuntime version="runtime version" sku="sku id"/> | <supportedRuntime version="runtime version" sku="sku id"/> | ||
* version | * version | ||
| 38行目: | 43行目: | ||
*: sku属性の有効な値については、下記に示すsku属性の値に関するセクションを参照すること。 | *: sku属性の有効な値については、下記に示すsku属性の値に関するセクションを参照すること。 | ||
<br> | <br> | ||
==== | ==== version属性 ==== | ||
version属性は、アプリケーションに必要なCLRのバージョンを指定する。<br> | version属性は、アプリケーションに必要なCLRのバージョンを指定する。<br> | ||
全ての.NET Framework v4.xバージョンでv4.0が指定されていることに注意すること。<br> | 全ての.NET Framework v4.xバージョンでv4.0が指定されていることに注意すること。<br> | ||
| 44行目: | 49行目: | ||
次の表に、version属性の有効な値を記載する。<br> | 次の表に、version属性の有効な値を記載する。<br> | ||
<center> | <center> | ||
{| class="wikitable" | {| class="wikitable" | style="background-color:#fefefe;" | ||
|- | |- | ||
! .NET Frameworkのバージョン ! | ! style="background-color:#66CCFF;" | .NET Frameworkのバージョン | ||
! style="background-color:#66CCFF;" | version属性 | |||
|- | |- | ||
| 1.0 || "v1.0.3705" | | 1.0 || "v1.0.3705" | ||
| 59行目: | 65行目: | ||
|- | |- | ||
| 4.0 - 4.8 || "v4.0" | | 4.0 - 4.8 || "v4.0" | ||
|- | |||
| 5.0 || "net5.0" | |||
|- | |||
| 6.0 || "net6.0" | |||
|- | |||
| 7.0 || "net7.0" | |||
|- | |||
| 8.0 || "net8.0" | |||
|- | |||
| 9.0 || "net9.0" | |||
|} | |} | ||
</center> | </center> | ||
<br> | <br> | ||
==== | ==== sku属性 ==== | ||
sku属性は、ターゲットフレームワークモニカー(TFM)を使用して、アプリが対象として実行する必要がある.NET Framework のバージョンを示す。<br> | sku属性は、ターゲットフレームワークモニカー (TFM) を使用して、アプリが対象として実行する必要がある.NET Framework のバージョンを示す。<br> | ||
<br> | |||
<u>※注意</u><br> | |||
<u>この設定は、.NET Framework4以降の場合のみ指定する。</u><br> | |||
<br> | <br> | ||
下表に、sku属性でサポートされている有効な値を記載する。<br> | 下表に、sku属性でサポートされている有効な値を記載する。<br> | ||
<center> | <center> | ||
{| class="wikitable" | {| class="wikitable" | style="background-color:#fefefe;" | ||
|- | |- | ||
! .NET Frameworkのバージョン ! | ! style="background-color:#66CCFF;" | .NET Frameworkのバージョン | ||
! style="background-color:#66CCFF;" | sku属性 | |||
|- | |- | ||
| 4.0 || ".NETFramework,Version=v4.0" | | 4.0 || ".NETFramework,Version=v4.0" | ||
| 110行目: | 129行目: | ||
</center> | </center> | ||
<br> | <br> | ||
==== アプリケーション構成ファイルの例 ==== | |||
サポートされているCLRのバージョンを、構成ファイルで指定する例を示す。<br> | サポートされているCLRのバージョンを、構成ファイルで指定する例を示す。<br> | ||
ここでは、アプリケーション構成ファイルは、アプリケーションが.NET Framework4.7を対象としているものとする。<br> | ここでは、アプリケーション構成ファイルは、アプリケーションが.NET Framework4.7を対象としているものとする。<br> | ||
< | <syntaxhighlight lang="xml"> | ||
<?xml version="1.0"?> | <?xml version="1.0" encoding="utf-8" ?> | ||
<configuration> | <configuration> | ||
<startup> | <startup> | ||
| 120行目: | 139行目: | ||
</startup> | </startup> | ||
</configuration> | </configuration> | ||
</ | </syntaxhighlight> | ||
<br> | <br> | ||
また、<supportedRuntime>要素を記述する順番で優先度が変わる。(先に記述したものが優先される)<br> | また、<supportedRuntime>要素を記述する順番で優先度が変わる。(先に記述したものが優先される)<br> | ||
< | <syntaxhighlight lang="xml"> | ||
<?xml version="1.0"?> | <?xml version="1.0" encoding="utf-8" ?> | ||
<configuration> | <configuration> | ||
<startup> | <startup> | ||
| 131行目: | 150行目: | ||
</startup> | </startup> | ||
</configuration> | </configuration> | ||
</ | </syntaxhighlight> | ||
<br><br> | <br><br> | ||
== | == <TargetFrameworks>要素 == | ||
< | プロジェクトファイル (.csproj) 内の<code><TargetFrameworks></code>要素において、.NET Core以降のアプリケーションに必要なCLRのバージョンを指定する。<br> | ||
<br> | <br> | ||
<supportedruntime> | 下表に、<TargetFrameworks>要素の有効な値を示す。<br> | ||
ただし、.Net Framework1.0のみをサポートするようにビルドしたアプリケーションでは、<requiredRuntime> | <center> | ||
{| class="wikitable" | style="background-color:#fefefe;" | |||
|- | |||
! style="background-color:#66CCFF;" | .NETのバージョン | |||
! style="background-color:#66CCFF;" | <TargetFrameworks>要素 | |||
|- | |||
| .NET Core || .NET Core 2.1 : "netcoreapp2.1"<br>.NET Core 3.1 : "netcoreapp3.1" | |||
|- | |||
| 5.0 || "net5.0" | |||
|- | |||
| 6.0 || "net6.0" | |||
|- | |||
| 7.0 || "net7.0" | |||
|- | |||
| 8.0 || "net8.0" | |||
|- | |||
| 9.0 || "net9.0" | |||
|} | |||
</center> | |||
<br> | |||
ターゲットフレームワークモニカーの詳細を知りたい場合は、[[インストール_-_.NET_SDK#プロジェクトのターゲッットフレームワークの指定]]のページを参照すること。<br> | |||
<br><br> | |||
== .NET Frameworkバージョン選択ロジック == | |||
<code><supportedruntime></code>タグは、.Net Framework 1.1以降を使用してビルドした全てのアプリケーションで使用する必要がある。<br> | |||
ただし、.Net Framework1.0のみをサポートするようにビルドしたアプリケーションでは、<code><requiredRuntime></code>タグを使用する必要がある。<br> | |||
<br> | |||
.NETアプリケーションがどのようにして.Net Frameworkのバージョンを使い分けるかどうかを以下に示す。<br> | |||
<br> | |||
==== アプリケーション構成ファイル (.configファイル) が存在する場合 ==== | |||
* <code><supportedRuntime></code>タグが<u>アプリケーション構成ファイルが存在する</u>場合 | |||
** 対応する.Net Frameworkのバージョンがインストールされている場合 | |||
**: 対応する.Net Frameworkが使用される。 | |||
** 対応する.Net Frameworkのバージョンがインストールされていない場合 | |||
*** Visual Studio等でビルド時に指定した.Net Frameworkのバージョンがインストールされている場合 | |||
***: Visual Studio等でビルド時に指定した.Net Frameworkのバージョンが使用される。 | |||
*** Visual Studio等でビルド時に指定した.Net Frameworkのバージョンがインストールされていない場合 | |||
***: 現在インストールされている最新の.Net Frameworkのバージョンが使用される。 | |||
*: <br> | |||
* <code><supportedRuntime></code>タグが<u>アプリケーション構成ファイルに存在しない</u>場合 | |||
** Visual Studio等でビルド時に指定した.Net Frameworkのバージョンがインストールされている場合 | |||
**: Visual Studio等でビルド時に指定した.Net Frameworkのバージョンが使用される。 | |||
** Visual Studio等でビルド時に指定した.Net Frameworkのバージョンがインストールされていない場合 | |||
**: 現在インストールされている最新の.Net Frameworkのバージョンが使用される。 | |||
<br> | |||
==== アプリケーション構成ファイル (.configファイル) が存在しない場合 ==== | |||
* Visual Studio等でビルド時に指定した.Net Frameworkのバージョンがインストールされている場合 | |||
*: Visual Studio等でビルド時に指定した.Net Frameworkのバージョンが使用される。 | |||
*: <br> | |||
* Visual Studio等でビルド時に指定した.Net Frameworkのバージョンがインストールされていない場合 | |||
*: 現在インストールされている最新の.Net Frameworkのバージョンが使用される。 | |||
<br><br> | <br><br> | ||
| 152行目: | 219行目: | ||
.NET Frameworkのバージョン間の互換性の違いについては、.NET Frameworkの[https://docs.microsoft.com/dotnet/framework/migration-guide/application-compatibility アプリケーションの互換性]を参照すること。<br> | .NET Frameworkのバージョン間の互換性の違いについては、.NET Frameworkの[https://docs.microsoft.com/dotnet/framework/migration-guide/application-compatibility アプリケーションの互換性]を参照すること。<br> | ||
<br><br> | <br><br> | ||
{{#seo: | |||
|title={{PAGENAME}} : Exploring Electronics and SUSE Linux | MochiuWiki | |||
|keywords=MochiuWiki,Mochiu,Wiki,Mochiu Wiki,Electric Circuit,Electric,pcb,Mathematics,AVR,TI,STMicro,AVR,ATmega,MSP430,STM,Arduino,Xilinx,FPGA,Verilog,HDL,PinePhone,Pine Phone,Raspberry,Raspberry Pi,C,C++,C#,Qt,Qml,MFC,Shell,Bash,Zsh,Fish,SUSE,SLE,Suse Enterprise,Suse Linux,openSUSE,open SUSE,Leap,Linux,uCLnux,Podman,電気回路,電子回路,基板,プリント基板 | |||
|description={{PAGENAME}} - 電子回路とSUSE Linuxに関する情報 | This page is {{PAGENAME}} in our wiki about electronic circuits and SUSE Linux | |||
|image=/resources/assets/MochiuLogo_Single_Blue.png | |||
}} | |||
__FORCETOC__ | __FORCETOC__ | ||
[[カテゴリ:C_Sharp]] | [[カテゴリ:C_Sharp]] | ||