Pergunta

Acabei de construir meu novo projeto COM (C #, .NET 3.5). Este projecto irá ser chamado por um aplicativo VFP. É ótimo trabalhar na minha máquina de desenvolvimento, mas agora eu preciso saber como implantá-lo na máquina do usuário. Clique uma vez não está disponível para esse tipo de projeto, então eu acho que estou preso com a distribuição manualmente a DLL.

Então, onde eu deveria colocar a DLL e como faço para registrá-lo?

BTW, o quadro 3.5 estiver instalado na máquina do usuário.

TIA

Foi útil?

Solução

Eu realmente nunca usou RegSvr32 com montagens .Net, e eu uso o regasm com a opção / codebase:

    C:\Windows\Microsoft.NET\Framework\v2.0.50727\regasm.exe /codebase mydll.dll

Você também pode usar a opção / tlb para exportar a biblioteca de tipos e registrá-lo.

É claro que a maneira mais fácil, basta criar um instalador com VStudio e ele vai fazer isso por você.

Outras dicas

Criar uma descrição da classe COM e Interfaces

.Net assembleias não incluem informações em formato compatível Type Library. Por isso, é necessário que o programador para executar um dos dois utilitários Net-fornecidos para extrair a descrição montagem de uma classe em um arquivo Type Library.

Um utilitário é TlbExp.exe, o .NET Type Library Exporter. Este utilitário de linha de comando toma como entrada o nome de um arquivo DLL de montagem para ser convertido para uma biblioteca de tipos. O programador também pode especificar o nome de um arquivo Type Library a ser criado.

tlbexp ComServer.dll /out:ComServer.tlb

Assembly exported to C:\Magellan\Source\Output\Debug\ComServer.tlb

Uma vez que uma biblioteca de tipos foi criado, ele pode ser referenciado por um cliente COM para obter as informações necessárias para o cliente COM para ligar às interfaces da classe COM, e ativar a classe COM em tempo de execução.

Registro da Classe e Interfaces COM

Para uma classe COM para ser acessível pelo cliente em tempo de execução, a infra-estrutura COM deve saber como localizar o código que implementa a classe COM. O comando a seguir faz isso:

regasm ComServer.dll

Seu DLL pode ser colocado em qualquer lugar que você deseja, mas uma boa escolha é C:. \ Program Files \ MyApplication

http://www.csharphelp.com/archives/archive190.html

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top