Microsoft MVP성태의 닷넷 이야기
.NET Framework: 6. Win2000에서의 .NET COM+ 자동 등록 오류 발생 해결 [링크 복사], [링크+제목 복사],
조회: 22196
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

현재의 제 노트북에 설치된 환경이 워낙 복잡하고 잘 설치되어 있다보니, 쉽게 XP로의 이전을 못하고 있습니다. 더군다나, 프리랜서로 작업을 하다보니, 고객들의 요청이 모두가 급하다 보니, 쉽게 시간을 낼 수 없어서 미루고 있습니다.

그래서 .NET에 대한 공부를 Win2000 환경에서 하고 있는데... 하다보니 문제가 좀 발생하더군요.

일례로, .NET으로 만든 Assembly를 COM+로 등록한다고 표시를 해두면, 실행 시에 자동으로 등록되어지는 기능이 있는데, Win2000에서는 그 훌륭한 "자동 등록" 기능이 다소 불안정하게 동작합니다.
.NET의 버그라고 생각하고 할 수 없이, regsvcs.exe로 수동 등록을 해주면서 테스트를 했는데, "김현승의 닷넷이야기" 클럽에 글을 올렸더니, "안재우" 님이 아래와 같은 답변을 해주시더군요.

실제로, 그 이후로 "자동 등록"에 관해서는 어떠한 문제도 발생하지 않았습니다. 아래의 답변의 요점은,,, Win2000 SP3과 .NET Framework SP2를 설치할 것이며, Assembly Type에 GUID를 부여하라는 것입니다.

실제 질문/답변의 스레드는 다음의 URL에서 확인하실 수 있습니다.

http://www.devpia.com/Club/ClubSub/ClubBBS/ClubBBSView.aspx?c_no=188&ref=188&page=1&depth=0&step=0&clubname=C_ClubBoard&code=2307&Cate=bbs&SearchDistinct=&SearchText=

위의 웹페이지를 정상적으로 보기 위해서는 Devpia에 회원 가입이 되어야 하며, "김현승의 닷넷이야기" 클럽에 가입해야 합니다.

////// 아래는 안재우 (lancers@devpia.com )님의 답변입니다. /////////
결론적으로 말씀드리면..
네.. 자동 등록은 100% 제대로 동작한다고 보긴 어렵습니다.
제 경우는 거의 그런 상황을 본 적은 없습니다만...
몇몇 사람들이 Self-Registration 시 문제가 생기는 경우가 있다는 얘기를 하더군요.
운영체제하고도 어느 정도 관련이 있는것 같던데..
2000에서 그런 경우를 더욱 많이 본 것 같습니다. (아시다시피 2000의 COM+는 구 버전에다 버그도 좀 있죠)
저는 XP를 사용하는데 그 이후는 하나도 본 적이 없는 것 같습니다만...
이건 공식적인 정보가 아니라 경험 상의 얘기이니 믿거나 말거나 입니다. :-)

역시 가장 확실하고 안정적인 방법은..
regsvcs를 사용해서 수동으로 등록하는 것이랍니다. ^^

그리고 궁금한 것 중 하나는
두 분 다 ActivationModel을 Server로 하셨나요, Library로 하셨나요?
저는 대부분의 경우 Library로 사용하는데 이러한 경우를 본 적이 거의 없습니다.
Server의 경우는 문제가 좀 많은 듯 하더군요.
예전에 자료실에도 올렸지만, .NET에서는 Server 활성화를 사용할 이유가 거의 전무합니다.

또 하나.. 개발을 계속하다보면.. COM+ Application 내에 동일한 이름의 컴포넌트가 계속 쌓이게 됩니다.
기본적으로 매번 빌드 시마다 VS.NET이 컴포넌트의 버전과 GUID를 랜덤하게 만들어 내기 때문인데요..
이게 문제가 되는 경우도 있는것 같더군요.
GUID를 고정시켜주면 그런 문제가 거의 없어질 것으로 생각됩니다. ^^

앗.. 그리고 ASP.NET이 JIT 컴파일하면서 블루스크린이 뜨는 문제..
저도 몇번 봤답니다. ^^
그런데 노트북을 바꾸고 나서는 한번도 본 적이 없는데, 이게 어찌된 일일까요..? ^^;;
윈 2000을 사용하시는 분들은 SP3를 반드시 까시고..
.NET Framework도 SP2로 패치하여 사용해 보시기 바랍니다.

다른 얘기입니다만..
윈폼 애플리케이션을 만들어보다가 희한한(?) 현상을 하나 목격했습니다.
약간 무거운(?) 애플리케이션이긴 한데..
정확한 원인이 무엇인지는 모르겠지만..
어느 날 터미널로 들어가보니..
폼 전체에 빨간 X 표시가 되어 있는체, 원인을 전혀 알 수 없는 오류가 발생해 있더군요.
운영체제가 아직 베타인 Windows.NET이어서 그랬는지.. 에궁.. -.-








[최초 등록일: ]
[최종 수정일: 7/9/2021]

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

비밀번호

댓글 작성자
 




... 121  122  123  124  125  126  127  128  [129]  130  131  132  133  134  135  ...
NoWriterDateCnt.TitleFile(s)
1830정성태1/1/201527550오류 유형: 265. svchost.exe 프로세스(IP Helper: IPHLPSVC)의 CPU 100% 현상
1829정성태12/16/201431316VC++: 86. Windows Vista부터 바뀐 Credential Provider 예제 분석 (2) [2]파일 다운로드1
1828정성태12/15/201427781VC++: 85. Windows Vista부터 바뀐 Credential Provider 예제 분석 (1) [4]파일 다운로드1
1827정성태12/12/201424093VC++: 84. CredUIPromptForWindowsCredentials Win32 API 사용법 정리
1826정성태12/11/201428588.NET Framework: 489. Socket.Listen에 전달된 backlog 인자의 의미 [6]
1825정성태12/11/201475772.NET Framework: 488. TCP 소켓 연결의 해제를 알 수 있는 방법 [10]파일 다운로드1
1824정성태12/10/201425818.NET Framework: 487. Socket.Receive 메서드의 SocketFlags.Peek 동작을 이용해 소켓 연결 유무를 확인? [8]파일 다운로드1
1823정성태12/10/201422700.NET Framework: 486. Java의 ScheduledExecutorService에 대응하는 C#의 System.Threading.Timer [2]
1822정성태12/3/201425365개발 환경 구성: 252. Xamarin 라이선스 관리 [8]
1821정성태12/1/201431829VS.NET IDE: 96. Visual Studio에서 /* ~ */ 주석을 위한 단축키(매크로)
1820정성태11/23/201420522.NET Framework: 485. Mono Profiler에서 IL 코드 변경이 가능할까? - 두 번째 이야기파일 다운로드1
1819정성태11/22/201420526오류 유형: 264. MSBuild 에러 - warning MSB3052: The parameter to the compiler is invalid,
1818정성태11/22/201423002개발 환경 구성: 251. NUMA 노드 수에 따른 IIS Worker Process(w3wp.exe) 설정 [1]
1817정성태11/22/201426137VS.NET IDE: 95. Macros for Visual Studio 2013 [1]
1816정성태11/20/201420804.NET Framework: 484. Mono Profiler에서 IL 코드 변경이 가능할까?
1815정성태11/18/201418824.NET Framework: 483. 코드로 살펴 보는 ETW의 활성화 시점 [2]
1814정성태11/18/201420372오류 유형: 263. Unable to find the requested .Net Framework Data Provider. It may not be installed.
1813정성태11/18/201422135오류 유형: 262. Build Events에 robocopy 작업이 있는 경우 "VCEnd exited with code 3" 오류 발생
1812정성태11/17/201419665.NET Framework: 482. ETW 자동 생성 코드의 VerificationException 예외 발생
1811정성태11/16/201420975.NET Framework: 481. Mono 내부의 문자열 처리 방식은 UTF-8
1810정성태11/15/201457566.NET Framework: 480. C# - 배치 파일 실행하고 출력 결과를 얻는 방법 [4]
1809정성태11/11/201422840.NET Framework: 479. Mono Profiler를 Unity의 Plugin으로 사용하는 방법
1808정성태11/11/201423201.NET Framework: 478. C# - 폴더 경로 문자열에서 "..", "." 표기를 고려한 최종 문자열을 얻는 방법 [2]
1807정성태11/10/201429294개발 환경 구성: 250. 서버용 Socket에서 사용하는 포트가 충돌한다면?파일 다운로드1
1806정성태11/10/201425129.NET Framework: 477. SeCreateGlobalPrivilege 특권과 WCF NamedPipe
1805정성태11/5/201421921.NET Framework: 476. Visual Studio에서 Mono용 Profiler 개발 [3]파일 다운로드1
... 121  122  123  124  125  126  127  128  [129]  130  131  132  133  134  135  ...