Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Este artigo fornece informações sobre como adicionar referências a um projeto gerenciado do Visual C++.
Versão original do produto: Visual C++
Número original do KB: 310674
Resumo
Este artigo descreve o processo de adição de uma referência a outro assembly em um projeto do Visual C++. Em outras linguagens, como Visual C#, você pode adicionar uma referência por meio da caixa de diálogo Adicionar Referência . Essa caixa de diálogo não está disponível para aplicativos C++ gerenciados. Há várias dicas que facilitam o uso de referências em um aplicativo C++ gerenciado.
Referências do Microsoft .NET
As referências do .NET apontam para assemblies compartilhados. Por exemplo, o assembly System.Windows.Forms.dll é um assembly padrão para acessar as classes do Windows Forms. Para usar esse assembly em um aplicativo C++ gerenciado, basta referenciá-lo com uma #using diretiva de pré-processador, conforme mostrado aqui:
#using <System.Windows.Forms.dll>
Referências COM
O uso de um objeto COM (Component Object Model) em um aplicativo C++ gerenciado envolve uma decisão de design. Uma opção é usar o código COM não gerenciado dentro de uma classe gerenciada. Por exemplo, você pode decidir usar a solução tradicional #import . Essa pode ser uma boa opção para casos em que há problemas ao usar a interoperabilidade COM.
A segunda opção é usar assemblies de interoperabilidade que encapsulam o objeto COM. Esse é o único método disponível para outras linguagens, como C# e Visual Basic .NET. Para criar um assembly de interoperabilidade para um objeto COM, use a ferramenta TLBIMP.exe. Por exemplo, use as seguintes etapas para automatizar o Internet Explorer a partir de um aplicativo gerenciado:
Abra um prompt de comando.
Navegue até a pasta Sistema do Windows.
Digite o seguinte comando:
tlbimp shdocvw.dll /out:Interop.shdocvw.dllMova Interop.shdocvw.dll para a pasta do projeto.
Isso cria um assembly de interoperabilidade para os objetos COM em Shdocvw.dll. O arquivo resultante, Interop.shdocvw.dll, pode ser usado com uma #using diretiva. Em seguida, ele pode ser tratado como um componente gerenciado. Para obter instruções sobre como copiar automaticamente essa DLL (biblioteca de vínculo dinâmico) para a pasta de saída, consulte a seção Usando eventos de pós-compilação deste artigo.
Observação
As variáveis de ambiente do Visual C++ devem ser definidas para que TLBIMP.exe sejam reconhecidas. Se eles não estiverem definidos, primeiro você terá que executar ./VC7/BIN/VCVARS32.bat no Visual Studio .NET ou ./VC/BIN/VCVARS32.bat no Visual Studio e no Visual C++ Express Edition.
Referências do projeto
As referências de projeto são referências a montagens criadas por outros projetos. Novamente, a #using diretiva é usada para fazer referência a esses assemblies. No entanto, como esses assemblies não são compartilhados, você deve tomar medidas para garantir que o compilador possa encontrá-los. Existem dois métodos para fazer isso:
- Copie a montagem para a pasta do projeto.
- Altere as configurações do projeto para procurar a montagem:
Abra a caixa de diálogo Páginas de Propriedades do projeto.
Clique na pasta C/C++ .
Observação
No Visual C++, expanda Propriedades de Configuração e, em seguida, expanda C/C++.
Clique na página de propriedades Geral.
Modifique a propriedade Resolver #using Referências para apontar para a pasta que contém o assembly de destino.
Usando eventos de pós-compilação
Os assemblies privados devem residir na mesma pasta que o executável que os está usando. Quando você adiciona uma referência no Visual C#, no Visual Basic .NET ou no Visual Basic, ela é copiada automaticamente para a pasta de saída. Em um aplicativo C++ gerenciado, essa etapa pode ser automatizada por meio do uso de post-build eventos. Por exemplo, considere um cenário no qual você tem um assembly chamado MYLIB.dll na pasta do projeto do seu aplicativo C++ gerenciado chamado TestApp. As etapas a seguir configurarão um post-build evento que copiará essa DLL para a pasta de saída do projeto TestApp .
Abra a caixa de diálogo Páginas de Propriedades do projeto C++ Gerenciado.
Clique na pasta Criar Eventos .
Observação
No Visual C++, expanda Propriedades de Configuração e, em seguida, expanda Eventos de Build.
Clique na página de propriedades Evento Pós-Compilação.
Modifique a propriedade Linha de Comando para o seguinte comando:
copy $(<ProjectDir>)mylib.dll $(<TargetDir>)
Usando Visual C++ .NET ou Visual C++
Usando o Visual C++ .NET ou o Visual C++, você pode adicionar uma referência por meio da caixa de diálogo Adicionar Referência . Para adicionar uma referência de projeto, siga estas etapas:
No Gerenciador de Soluções, selecione o projeto .
No menu Projeto , clique em Adicionar Referências.
Observação
No Visual C++, clique em Referências no menu Projeto e, em seguida, clique em Adicionar Nova Referência.
Na caixa de diálogo Adicionar Referências , clique na guia que corresponde à categoria à qual você deseja adicionar uma referência.
Observação
No Visual C++, clique na guia Procurar na caixa de diálogo Adicionar Referências .
Clique em Procurar, localize o componente desejado na unidade local e clique em OK. O componente é adicionado ao campo Componentes selecionados .
Observação
No Visual C++, localize o componente desejado em sua unidade local.
Para adicionar a referência selecionada à guia atual, clique em Adicionar.
Observação
No Visual C++, clique em OK para fechar a caixa de diálogo e adicionar o componente na caixa de listagem Referências na caixa de diálogo Página de Propriedades do projeto.