Відповіді:
32-розрядні
%windir%\Microsoft.NET\Framework\[version]\config\machine.config
64-розрядні
%windir%\Microsoft.NET\Framework64\[version]\config\machine.config
[version]має дорівнювати v1.0.3705, v1.1.4322, v2.0.50727або v4.0.30319.
v3.0а v3.5просто містять додаткові збірки, щоб v2.0.50727їх не було config\machine.config. v4.5.xі v4.6.xзберігаються всередині v4.0.30319.
Ви можете запустити це в powershell:
[System.Runtime.InteropServices.RuntimeEnvironment]::SystemConfigurationFile
Що виводить це для .net 4:
C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config
Однак зауважте, що це може змінитися залежно від того, чи працює .net як 32 або 64 біт, що призведе до \Framework\або \Framework64\відповідно.
[Runtime.InteropServices.RuntimeEnvironment]::SystemConfigurationFile. (Також спеціально це 32-бітний шлях для .NET 4.0. 64-бітний перебуває у… \ Framework64 \… #pedantry)
Для того, щоб бути абсолютно впевненим, ляпніть ярлик на сторінці ASP.NET і запустіть цей код:
labelDebug.Text = System.Runtime.InteropServices.RuntimeEnvironment.SystemConfigurationFile;
Я вірю, що це не залишить сумнівів!
[System.Runtime.InteropServices.RuntimeEnvironment]::SystemConfigurationFile
Це напівзалежить, хоча ... моє:
C: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ CONFIG
і
C: \ Windows \ Microsoft.NET \ Framework64 \ v2.0.50727 \ CONFIG
C: \ Windows \ Microsoft.NET \ Framework \ v2.0.50727 \ CONFIG
У додатку asp.net використовуйте це
using System.Configuration;
Response.Write(ConfigurationManager.OpenMachineConfiguration().FilePath);
Ви можете запустити це в powershell: скопіюйте та вставте в оболонку живлення [System.Runtime.InteropServices.RuntimeEnvironment] :: SystemConfigurationFile
шахта виходить: C: \ Windows \ Microsoft.NET \ Framework \ v2.0.50527 \ config \ machine.config