Erro de interface do wrapper C #: E_NOINTERFACE

Estou tentando produzir um invólucro em C # para um objeto COM que eu tenho (chamado SC_COM.dll), mas estou tendo alguns problemas ao vinculá-lo ao Visual Studio 2008 (executando o Vista). Preciso fazer isso sem registro com a DLL do COM - estou usando um arquivo de manifesto para informar o Visual Studio sobre o SC_COM.dll e isso parece estar funcionando. Usei o TblImp.exe para gerar uma biblioteca de tipos (SC_COMtlb.dll) que estou consultando no Visual Studio 2008 para que eu possa fazer uma ligação antecipada com a DLL necessária. As DLLs estão no mesmo diretório que o manifesto e o executáve

Aqui está o problema: Quando instanciamos o objeto e tento chamar um de seus métodos em C #, ele lança o seguinte erro:

Erro detectado: não foi possível converter o objeto COM do tipo 'SC_COMtlb.SCAccessObjClass' para o tipo de interface 'SC_COMtlb.ISCUploader'. Esta operação falhou porque a chamada QueryInterface no componente COM da interface com o IID '{C677308A-AC0F-427D-889A-47E5DC990138}' falhou devido ao seguinte erro: Nenhuma interface desse tipo é suportada (exceção de HRESULT: 0x80004002 (E_NOINTERFACE)) .

Não estou totalmente certo do que esse erro significa - fiz uma pesquisa no código do erro e parece ser um erro C # relativamente geral. Então, eu vou vincular o objeto COM da maneira errada aqui ou há algum outro passo importante que talvez esteja faltando?

Provavelmente, devo observar que não tenho muita certeza de como a biblioteca de tipos (S \ C_COMtlb.dll) que produzi sabe onde está a DLL COM real, pois ela não está registrada no sistema - presumo que ela apenas apareça na mesmo diretório. Esse poderia ser o problema e, em caso afirmativo, como posso vincular melhor os dois?

questionAnswers(6)

yourAnswerToTheQuestion