Microsoft MVP성태의 닷넷 이야기
개발 환경 구성: 71. w3wp.exe에 환경 변수 전달하는 방법 [링크 복사], [링크+제목 복사],
조회: 20552
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 1개 있습니다.)

w3wp.exe에 환경 변수 전달하는 방법


사용자가 임의로 시작하는 응용 프로그램과는 달리 NT 서비스의 경우 SCM(Service Control Manager)에 의해서 생성되므로 사용자 임의로 해당 응용 프로그램에 대해서만 "환경 변수"를 제어할 수 있는 여지가 없어 보입니다. (대상이 전체 응용 프로그램이라면 "시스템 환경 변수" 또는 "사용자 환경 변수"를 통해서 제어가 가능합니다.)

물론, 방법이 없는 것은 아닙니다. 해당 서비스가 등록된 레지스트리 정보에 Environment 이름으로 된 레지스트리 값을 설정해주면 SCM 측에서 NT 서비스를 실행할 때 적절하게 해당 값을 환경 변수로 설정해 줍니다. 키 경로는 다음과 같습니다.

레지스트리 경로: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\[서비스 이름]
이름: Environment
형식: REG_MULTI_SZ

일례로, w3wp.exe에 "COR_ENABLE_PROFILING" 환경 변수 값을 1로 설정하고 싶다면 다음과 같이 지정할 수 있습니다.

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W3SVC
Environment (REG_MULTI_SZ)
 COR_ENABLE_PROFILING=1

위의 값은 Windows 2003의 경우이고, Windows 2008부터는 WAS (Windows Process Activation Service)에서 w3wp.exe를 관리하기 때문에 다음과 같이 지정해 주어야 합니다.

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WAS
Environment (REG_MULTI_SZ)
 COR_ENABLE_PROFILING=1





[이 토픽에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]

[연관 글]






[최초 등록일: ]
[최종 수정일: 4/11/2022]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 



2010-05-11 02시01분
Windows XP의 경우, aspnet_wp.exe에 환경 변수를 전달하는 방법은 전역적으로 설정하는 것과, ASPNET 계정의 환경 변수에 설정하는 방법이 있습니다.
kevin25

... 151  152  153  154  155  156  157  158  159  160  161  162  163  164  [165]  ...
NoWriterDateCnt.TitleFile(s)
913정성태8/22/201028301오류 유형: 104. Hyper-V 관리자 - VM 생성 오류 (VHD 생성 오류)
912정성태8/20/201030191.NET Framework: 183. 구조체 포인터 인자에 대한 P/Invoke 정의파일 다운로드1
911정성태8/19/201027067오류 유형: 103. System.Reflection.TargetException파일 다운로드1
910정성태8/19/201037859개발 환경 구성: 83. Hyper-V의 네트워크 유형 (1)
909정성태8/18/201033290오류 유형: 102. System.MissingMethodException
908정성태8/17/201024238개발 환경 구성: 82. Windows Virtual PC의 네트워크 유형 (3)
907정성태8/14/201021744개발 환경 구성: 81. Windows Virtual PC의 네트워크 유형 (2)
906정성태8/13/201030678개발 환경 구성: 80. Windows Virtual PC의 네트워크 유형 (1)
905정성태8/8/201032780Team Foundation Server: 39. 배치 파일로 팀 빌드 구성 [2]파일 다운로드1
904정성태8/8/201035532오류 유형: 101. SignTool Error: No certificates were found that met all the given criteria. [2]
903정성태8/6/201032462Team Foundation Server: 38. TFS 소스 코드 관리 기능 (4) - Branch
902정성태8/5/201024802Team Foundation Server: 37. TFS 2010의 소스 서버 수작업 구성
901정성태8/4/201024028Team Foundation Server: 36. TFS 소스 코드 관리 기능 (3) - Label
900정성태8/3/201026658Team Foundation Server: 35. TFS 소스 코드 관리 기능 (2) - Shelveset
899정성태8/2/201028792Team Foundation Server: 34. TFS 소스 코드 관리 기능 (1) - Changeset
898정성태7/31/201028298.NET Framework: 182. WCF의 InactivityTimeout [1]파일 다운로드1
897정성태7/26/201129483.NET Framework: 181. AssemblyVersion, AssemblyFileVersion, AssemblyInformationalVersion [4]
896정성태7/25/201036263.NET Framework: 180. C# Singleton 인스턴스 생성 [2]
895정성태7/25/201020145VS.NET IDE: 68. Visual Studio 2010 - .NET 1.1 원격 디버깅
894정성태7/25/201026091오류 유형: 100. Could not find the Database Engine startup handle. [1]
893정성태7/25/201027190오류 유형: 99. .NET 4.0 설치된 윈도우 7에서 SQL Server 2008 R2 설치 오류
892정성태7/9/201029009오류 유형: 98. 영문 윈도우에 한글 SQL Server 2008 R2 설치할 때 오류 [4]
891정성태7/8/201024788오류 유형: 97. MsiGetProductInfo failed to retrieve ProductVersion for package with Product Code = '{...}'. Error code: 1605. [2]
889정성태7/5/201026469.NET Framework: 179. Dictionary.Get(A) 대신 Dictionary.Get(A.GetHashCode())를 사용해서는 안 되는 이유 [1]
888정성태6/30/201024277오류 유형: 96. Hyper-V 연결 오류 - A connection will not be made because credentials may not be sent to the remote computer
887정성태6/23/201034135개발 환경 구성: 79. Hyper-V의 가상 머신에서 소리 재생 방법 [2]
... 151  152  153  154  155  156  157  158  159  160  161  162  163  164  [165]  ...