Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 

The ServicedComponent being invoked is not correctly configured (Use regsvcs to re-register).

이런 유의 오류가 발생하면서,

Server Error in '/' Application.
The ServicedComponent being invoked is not correctly configured (Use regsvcs to re-register).
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.EnterpriseServices.ServicedComponentException: The ServicedComponent being invoked is not correctly configured (Use regsvcs to re-register).

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

Stack Trace:

[ServicedComponentException: The ServicedComponent being invoked is not correctly configured (Use regsvcs to re-register).]
   System.EnterpriseServices.ServicedComponentProxy.FilterConstructors() +115
   System.EnterpriseServices.ServicedComponentProxyAttribute.CreateInstance(Type serverType) +752
   System.Runtime.Remoting.Activation.ActivationServices.IsCurrentContextOK(Type serverType, Object[] props, Boolean bNewObj) +67
   TestWebApp.ComPlusServerTest.Page_Load(Object sender, EventArgs e) in C:\Temp\TestWebApp\ComPlusServerTest.aspx.cs:63
   System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +14
   System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +43
   System.Web.UI.Control.OnLoad(EventArgs e) +91
   System.Web.UI.Control.LoadRecursive() +74
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1716

메시지에 따라 regsvcs.exe로 COM+ 객체를 등록할 때 다음의 오류 메시지가 나오는 경우,

The following installation error occurred:
1: One or more of the components being installed are already registered as 64 bit components in the target application. You must install the 32 bit versions of the components being installed in a diff
erent COM+ application, or delete the existing 64 bit versions of the components being installed from the target COM+ application prior to attempting install of the 32 bit versions. COM+ applications
cannot contain bit neutral components.


아마도 .NET COM+ DLL을 이미 COM+에 64비트 Library 유형으로 등록한 상태에서 다시 32비트로도 COM+에 등록하는 경우일 것입니다.

어쩔 수 없습니다. 만약 저런 상황이 나오면 해당 COM+ 객체를 64비트와 32비트에 대해 ApplicationName 등의 속성을 별도 분리해서 컴파일해야 합니다.

#if DEF_X86BUILD
[assembly: ApplicationName("MyComponentLibraryX86")]
#else
[assembly: ApplicationName("MyComponentLibrary")]
#endif

또한 각각의 Library 유형에서 서비스하게 되는 COM+ 객체의 GUID도 바꿔서,

#if DEF_X86BUILD
[System.Runtime.InteropServices.Guid("F873A6B6-ADC0-4C51-AF0F-FC2F88E466A6")]
#else
[System.Runtime.InteropServices.Guid("BDC0B215-0BA0-465A-A0C8-7CD5C7120ECF")]
#endif
public class MyComponentLibrary : ServicedComponent
{
    // ...[생략]...
}

빌드하면, 이후 해당 COM+를 사용하는 32/64비트 응용 프로그램은 정상적으로 객체를 등록/활성화할 수 있습니다.




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







[최초 등록일: ]
[최종 수정일: 3/17/2020]

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

비밀번호

댓글 작성자
 




... 46  47  48  49  50  [51]  52  53  54  55  56  57  58  59  60  ...
NoWriterDateCnt.TitleFile(s)
12702정성태7/11/202119024오류 유형: 733. TaskScheduler에 등록된 wacs.exe의 Let's Encrypt 인증서 업데이트 문제
12701정성태7/9/202118735.NET Framework: 1075. C# - ThreadPool의 스레드는 반환 시 ThreadStatic과 AsyncLocal 값이 초기화 될까요?파일 다운로드1
12700정성태7/8/202119339.NET Framework: 1074. RuntimeType의 메모리 누수? [1]
12699정성태7/8/202117886VS.NET IDE: 167. Visual Studio 디버깅 중 GC Heap 상태를 보여주는 "Show Diagnostic Tools" 메뉴 사용법
12698정성태7/7/202121770오류 유형: 732. Windows 11 업데이트 시 3% 또는 0%에서 다운로드가 멈춘 경우
12697정성태7/7/202116288개발 환경 구성: 574. Windows 11 (Insider Preview) 설치하는 방법
12696정성태7/6/202117939VC++: 146. 운영체제의 스레드 문맥 교환(Context Switch)을 유사하게 구현하는 방법파일 다운로드2
12695정성태7/3/202117990VC++: 145. C 언어의 setjmp/longjmp 기능을 Thread Context를 이용해 유사하게 구현하는 방법파일 다운로드1
12694정성태7/2/202119438Java: 24. Azure - Spring Boot 앱을 Java SE(Embedded Web Server)로 호스팅 시 로그 파일 남기는 방법 [1]
12693정성태6/30/202116417오류 유형: 731. Azure Web App Site Extension - Failed to install web app extension [...]. {1}
12692정성태6/30/202117191디버깅 기술: 180. Azure - Web App의 비정상 종료 시 남겨지는 로그 확인
12691정성태6/30/202117043개발 환경 구성: 573. 테스트 용도이지만 테스트에 적합하지 않은 Azure D1 공유(shared) 요금제
12690정성태6/28/202117891Java: 23. Azure - 자바(Java)로 만드는 Web App Service - Tomcat 호스팅
12689정성태6/25/202120471오류 유형: 730. Windows Forms 디자이너 - The class Form1 can be designed, but is not the first class in the file. [1]
12688정성태6/24/202119779.NET Framework: 1073. C# - JSON 역/직렬화 시 리플렉션 손실을 없애는 JsonSrcGen [2]파일 다운로드1
12687정성태6/22/202116765오류 유형: 729. Invalid data: Invalid artifact, java se app service only supports .jar artifact
12686정성태6/21/202117974Java: 22. Azure - 자바(Java)로 만드는 Web App Service - Java SE (Embedded Web Server) 호스팅
12685정성태6/21/202120086Java: 21. Azure Web App Service에 배포된 Java 프로세스의 메모리 및 힙(Heap) 덤프 뜨는 방법
12684정성태6/19/202118432오류 유형: 728. Visual Studio 2022부터 DTE.get_Properties 속성 접근 시 System.MissingMethodException 예외 발생
12683정성태6/18/202119041VS.NET IDE: 166. Visual Studio 2022 - Windows Forms 프로젝트의 x86 DLL 컨트롤이 Designer에서 오류가 발생하는 문제 [1]파일 다운로드1
12682정성태6/18/202115536VS.NET IDE: 165. Visual Studio 2022를 위한 Extension 마이그레이션
12681정성태6/18/202116511오류 유형: 727. .NET 2.0 ~ 3.5 + x64 환경에서 System.EnterpriseServices 참조 시 CS8012 경고
12680정성태6/18/202118551오류 유형: 726. python2.7.exe 실행 시 0xc000007b 오류
12679정성태6/18/202118085COM 개체 관련: 23. CoInitializeSecurity의 전역 설정을 재정의하는 CoSetProxyBlanket 함수 사용법파일 다운로드1
12678정성태6/17/202116261.NET Framework: 1072. C# - CoCreateInstance 관련 Inteop 오류 정리파일 다운로드1
12677정성태6/17/202120216VC++: 144. 역공학을 통한 lxssmanager.dll의 ILxssSession 사용법 분석파일 다운로드1
... 46  47  48  49  50  [51]  52  53  54  55  56  57  58  59  60  ...