COM Interop .NET 어셈블리 (COM 호출 가능 래퍼)를 프로그래밍 중이며 올바른 방법으로 발생한 오류를 전달하는 것이 무엇인지 이해하려고합니다. COM 클라이언트/소비자에 대한 .NET 어셈블리. 이것이 내 질문을 많이 변경시키지 않았는지는 모르겠지만이 특정 .NET 어셈블리는 기존의 오픈 소스 FTP 라이브러리를 가져 와서 COM의 하위 집합을 COM에 노출하고 있습니다. 대부분의 경우 간단하고 "벙어리"래퍼입니다..NET 어셈블리에서 COM 클라이언트/소비자에 대한 오류 처리 또는 전달
오류 처리를 프로그래밍하는 가장 좋은 방법은 COM 클라이언트/소비자가 오류 이벤트를 구독하는 데 사용할 수있는 .NET 어셈블리 안에 공개 OnError 이벤트를 포함시키는 것입니다. 그런 다음 이벤트를 사용할지 여부와 처리 방법을 결정하기 위해 COM에서 프로그래밍하는 것이 좋습니다. COM 프로그래머가 오류 이벤트 처리기를 생략하고 .NET 어셈블리 내에서 발생하는 오류에 대한 인식이 없기 때문에 다소 위험 할 수 있습니다. 이 .NET 어셈블리는 매우 일반적이기 때문에 .NET 어셈블리에서 메시지 상자를 가져 오거나 COM 소비자가 거의 또는 전혀 제어 할 수없는 다른 방법으로 오류를 처리하는 것을 원치 않습니다.
이 방법이나 표준 방법을 처리하는 더 좋은 방법이 있습니까?
이것은 의미 있고 효과적입니다. 나는 여전히 .NET의 신참인데 어디서 엉망이되었는지는 내가 책을 읽고 자습서를보고 실제로 뭔가를하는 코드가 try/catch 블록 안에 있어야한다는 것을 분명히하는 것입니다. 나는 여기에 앉아서 생각하고있다. 이제 예외를 잡았고, 나는 그것을 어떻게하면 좋을까? 그런 다음 나는 그것을 전달할 미친 계획을 세워야했습니다. 간단한 해결책은 COM 클라이언트/소비자에게 오류를 전달할 수 있도록 try/catch 블록을 제거하는 것이 었습니다. – HK1