서비스 참조를 보유하고있는 ComVisible .Net (C#) dll을 만들었습니다. 개체를 만들 때마다 외부 COM 클라이언트 (VBScript)에서 dll에 액세스하려고 할 때 예외가 throw됩니다.dll의 서비스 참조에 새로운 키워드
예외는 InvalidOperationException (0x80131509)입니다.
짧은 조사를 통해 서비스 참조 객체 생성시 실패한 것으로 나타났습니다 ("new"). 아래 코드에서
- 서비스 참조 객체 사용되는 이름은
ServiceClient
ServiceClient
는 "새로운"키워드를 제거- 실패 생성자에서 참조를 만들려고는 C# DLL을
- 에 대한 개인입니다 클래스 또는 생성자 모두 코드 패스를 만드는에서,
- 이 서비스는 및 실행
DLL이 코드 :
namespace UIIdentifier.Updater
{
[ClassInterface(ClassInterfaceType.AutoDispatch)]
public class Client
{
[ComVisible(false)]
//<<--This throws the exception -->>
private ServiceClient uiSpySrv = new ServiceClient();
[ComVisible(true)]
public string hello()
{
return "hello";
}
}
}
클라이언트 코드 :
Dim oUpdater
Set oUpdater = CreateObject("UIIdentifier.Updater.Client")
MsgBox oUpdater.hello
이런 일이 발생하는 이유 어떤 제안?
예외는 무엇입니까? –
@JaredKells : InvalidOperationException (ID : 0x80131509) –
메시징 인프라를 설정하기 위해 구성 파일에 액세스하려고합니다 (예 : 적절한 URL 가져 오기). 호출 클라이언트 코드에 구성 파일이 없습니다. –