mporte TLB para C #

uero importar uma biblioteca de tipos (tlb) para C

Como importo um.tlb dentro de.cs arquivo de código?

Borland Delphi pode importar um.tlb para dentro.pas usando a ferramenta de linha de comandotlibimp.exe:

C:\Develop>tlibimp.exe SopQuotingEngineActiveX.tlb
Borland TLIBIMP Version 5.1  Copyright (c) 1997, 2000 Inprise Corporation
Type library loaded...
Created C:\Develop\SopQuotingEngineActiveX_TLB.dcr
Created C:\Develop\SopQuotingEngineActiveX_TLB.pas

E agora existe um.pas arquivo de código fonte contendo constantes, enumerações, interfaces que estavam dentro do arquivo compilado da biblioteca de tipos (tlb):

SopQuotingEngineActiveX_TLB.pas:

unit SopQuotingEngineActiveX_TLB;

interface
...
const
   CLASS_XSopQuotingEngine: TGUID = '{3A46FFB8-8092-4920-AEE4-0A1AAACF81A0}';
...

// *********************************************************************//
// Interface: IXSopQuotingEngine
// Flags:     (4416) Dual OleAutomation Dispatchable
// GUID:      {AA3B73CC-8ED6-4261-AB68-E6AE154D7D52}
// *********************************************************************//
  IXSopQuotingEngine = interface(IDispatch)
    ['{AA3B73CC-8ED6-4261-AB68-E6AE154D7D52}']
    procedure OnStartPage(const AScriptingContext: IUnknown); safecall;
    procedure OnEndPage; safecall;
    procedure Connect(const ConnectionString: WideString); safecall;
    procedure Disconnect; safecall;
    function  xmlRateQuote(const xmlQuote: WideString): WideString; safecall;
  end;
  ...

  CoXSopQuotingEngine = class
    class function Create: IXSopQuotingEngine;
  end;

O que é o .NET C # equivalente para importar uma biblioteca de tipos para o código C # nativ

Not: tentei usartlbimp.exe que acompanha o Windows SDK, mas que importa uma biblioteca de tipos para uma dll de assembly gerenciado:

C:\Develop>"c:\Program Files\Microsoft SDKs\Windows\v7.1\Bin\NETFX 4.0 Tools\x64\tlbimp" SopQuotingEngineActiveX.tlb
Microsoft (R) .NET Framework Type Library to Assembly Converter 4.0.30319.1
Copyright (C) Microsoft Corporation.  All rights reserved.

TlbImp : warning TI3002 : Importing a type library into a platform agnostic assembly.  This can cause errors if the type library is not truly platform agnostic.
TlbImp : Type library imported to SopQuotingEngineActiveX.dll

O que é o .NET C # equivalente para importar uma biblioteca de tipos para o código C # nativ

Nota O que eu quero ver é um.cs arquivo de código com todas as interfaces, constantes, enumerações necessárias - tudo o que é necessário para chamar o objeto COM. Por exemplo, exemplo:

SopQuotingEngineActiveX.cs

[ComImport, Guid("AA3B73CC-8ED6-4261-AB68-E6AE154D7D52")
       ]
public interface IXSopQuotingEngine
{
    void OnStartPage(object AScriptingContext);
    void OnEndPage();
    void Connect(string ConnectionString);
    void Disconnect();
    string xmlRateQuote(string xmlQuote);
}

[ComImport, Guid("3A46FFB8-8092-4920-AEE4-0A1AAACF81A0")]
public class XSopQuotingEngineClass
{
}

(exceto sem os bugs)

Veja tambéConverter o arquivo IDL da interface para C #Como ler TLB (bibliotecas de tipos) de código não gerenciado em C #? .NET C #: É possível importar o TLB (semi-) automaticamente e adicionar PreserveSig a um tipmportador da Biblioteca de Tipos (Tlbimp.ex

questionAnswers(2)

yourAnswerToTheQuestion