Machine.Config는 어디에 있습니까?


435

C # 3.5 앱에 대해 서버 GC 설정을 사용할 수 있도록 변경 사항을 적용하고 싶습니다 machine.config. 파일 을 편집하면 됩니다.

유일한 문제는 그것이 어디에 있는지 모른다는 것입니다.

여러 다른 시스템에서이 파일의 경로를 반복 가능한 방식으로 찾을 수있는 방법

답변:


585

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.xv4.6.x내부에 저장됩니다 v4.0.30319.


20
machine.config가 v2.0.50727 및 v4.0.30319 인 유일한 두 개의 [version] 디렉토리를 언급 할 가치가 있습니다. v3.0과 v3.5는 .NET 2.0 CLR과 v4.5.x를 사용하기 때문입니다. 대체물이 떨어 지므로 자체 프레임 워크 디렉토리가 없습니다. 아, 그리고 여전히 .NET 1.1을 사용하기에 운이 좋지 않으면 Framework / v1.1.4322 디렉토리가있을 수 있습니다.
Scott Lerch

@ScottLerch 내 시스템에는 맞지 않습니다. v1.0.3705, v1.1.4322, v2.0.50727, v3.0, v3.5 및 v4.0.30319가 있습니다.
Kevin Panko

2
@KevinPanko 그래, 나는 이미 약 1.1에 대한 경고를 언급했지만 1.0도 언급 했어야 ... 단지 오랫동안 그들 중 하나를 다루지 않아도되었습니다. 그러나 v3.0 또는 v3.5 디렉토리에서 machine.config를 찾지 않아야합니다. 그렇다면 이유를 모르겠습니다.
Scott Lerch 2016 년

메모장을 관리자로 실행하여 .config 파일을 열어야합니다. 따라서 시스템을 저장할 때 32 또는 64 비트를 기반으로 잘못된 폴더에 변경 사항을 저장하지 마십시오.
Afshin Teymoori

@AfshinTeymoori 100 % 확신 할 수는 없지만 비 관리자 모드에서 메모장을 실행하면 파일에 대한 쓰기 권한이 없으므로 변경 사항을 전혀 저장할 수 없습니까? (또한 관리자로 실행하거나 32 또는 64 비트로 저장하면 변경되지 않아야합니다).
Peter

88

powershell에서이를 실행할 수 있습니다.

[System.Runtime.InteropServices.RuntimeEnvironment]::SystemConfigurationFile

.net 4에 대해 이것을 출력합니다.

C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config

이 힘 변화 닷넷 발생되는 32 또는 64 비트의 실행 여부에 따라 것을 그러나 주 \Framework\또는 \Framework64\각각.


5
PowerShell에서는 "시스템"을 생략 할 수 있습니다. 그냥 사용하십시오 [Runtime.InteropServices.RuntimeEnvironment]::SystemConfigurationFile. (또한 .NET 4.0 의 32 비트 경로이기도합니다. 64 비트는… \ Framework64 \… #pedantry에 있습니다.)
brianary

2
64 비트 PowerShell을 실행중인 경우 64 비트 경로가 반환됩니다.
ForNeVeR

45

확실하게 확인하려면 ASP.NET 페이지에서 Label을 치고이 코드를 실행하십시오.

labelDebug.Text = System.Runtime.InteropServices.RuntimeEnvironment.SystemConfigurationFile;

나는 이것이 의심 할 여지가 없다고 믿는다!


14
또는 powershell에서 실행[System.Runtime.InteropServices.RuntimeEnvironment]::SystemConfigurationFile
Daniel Little

16

그것은 비록 반 의존합니다 ... 내 것은 :

C : \ Windows \ Microsoft.NET \ 프레임 워크 \ v2.0.50727 \ CONFIG

C : \ Windows \ Microsoft.NET \ Framework64 \ v2.0.50727 \ CONFIG



2

asp.net 앱에서 이것을 사용하십시오

using System.Configuration;
Response.Write(ConfigurationManager.OpenMachineConfiguration().FilePath);

2
  1. Windows Run 명령을 엽니 다. 바로 가기 => windows 키 + r
  2. "microsoft.net"을 입력하십시오-MS .Net 폴더가 열립니다
  3. "프레임 워크"/ "Framework64"폴더를 엽니 다 (프로세서 기반).
  4. 특정 FW 버전 폴더를 선택하십시오 (예 : "v4.0.30319")
  5. 설정 폴더 열기
  6. Machine.config를 사용할 수 있습니다. 건배.

-1

powershell에서이를 실행할 수 있습니다. power shell에서 복사하여 붙여 넣기 [System.Runtime.InteropServices.RuntimeEnvironment] :: SystemConfigurationFile

광산 출력은 다음과 같습니다. C : \ Windows \ Microsoft.NET \ Framework \ v2.0.50527 \ config \ machine.config

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.