【发布时间】:2011-01-20 11:52:00
【问题描述】:
我想应用更改,以便我可以为我的 C# 3.5 应用程序使用服务器 GC 设置 - 我可以通过编辑 machine.config 文件来做到这一点。
唯一的问题是我不知道那在哪里。
如何在多个不同的机器上以可重复的方式找到该文件的路径
【问题讨论】:
我想应用更改,以便我可以为我的 C# 3.5 应用程序使用服务器 GC 设置 - 我可以通过编辑 machine.config 文件来做到这一点。
唯一的问题是我不知道那在哪里。
如何在多个不同的机器上以可重复的方式找到该文件的路径
【问题讨论】:
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 中。
【讨论】:
C:\Windows\Microsoft.NET\Framework\v2.0.50727\CONFIG
【讨论】:
不过,这半取决于...我的是:
C:\Windows\Microsoft.NET\Framework\v2.0.50727\CONFIG
和
C:\Windows\Microsoft.NET\Framework64\v2.0.50727\CONFIG
【讨论】:
为了万无一失,请在 ASP.NET 页面上贴一个标签并运行以下代码:
labelDebug.Text = System.Runtime.InteropServices.RuntimeEnvironment.SystemConfigurationFile;
我相信这将毫无疑问!
【讨论】:
[System.Runtime.InteropServices.RuntimeEnvironment]::SystemConfigurationFile
您可以在 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。 (这也是 .NET 4.0 的 32 位 路径。64 位在…\Framework64\…#pedantry)
在你的 asp.net 应用中使用这个
using System.Configuration;
Response.Write(ConfigurationManager.OpenMachineConfiguration().FilePath);
【讨论】:
您可以在 powershell 中运行它: 在 power shell 中复制和粘贴 [System.Runtime.InteropServices.RuntimeEnvironment]::SystemConfigurationFile
我的输出是: C:\Windows\Microsoft.NET\Framework\v2.0.50527\config\machine.config
【讨论】:
【讨论】:
这是一个迟到的回复,但如果有人仍然希望打开 machine.config 并查看/更新配置,这里有一个使用 powershell 进行 IIS 配置的示例
$machineConfig = [System.Configuration.ConfigurationManager]::OpenMachineConfiguration()
$deployment = $machineConfig.GetSection("system.web/deployment")
$deplyment.Retail = $true
$machineconfig.save()
【讨论】: