Freqüentemente, um programador. NET se depara com a tarefa de usar a funcionalidade de uma DLL dinâmica escrita por outro desenvolvedor em código não gerenciado. Às vezes, a funcionalidade dessa biblioteca pode ser muito, muito extensa. Registre manualmente cada classe, função, constante, etc. em seu projeto. - muito tempo. Felizmente, existem ferramentas que automatizam parcialmente esse processo. Vamos falar sobre um deles.
Necessário
- - PC com Visual Studio 2008/2010;
- - a Internet.
Instruções
Passo 1
Se você tiver uma biblioteca dinâmica *.dll escrita em código não gerenciado, por exemplo, em C ou C ++, bem como seus arquivos de cabeçalho, e precisar declarar um monte de construções de biblioteca em seu projeto, então um ótimo solução para você pode ser a ferramenta PInvoker. O PInvoker é distribuído gratuitamente como uma extensão do IDE do Visual Studio (versões 2005, 2008 e 2010 são suportadas), bem como um aplicativo autônomo.
Trabalhar com isso é simples e conveniente. PInvoker importa definições PInvoke para código C # ou VB. NET gerenciado de arquivos de cabeçalho C / C ++ e suas DLLs associadas. Você só precisa escolher em uma lista de funções, estruturas, enumerações, constantes, delegados disponíveis e assim por diante. necessário e importado para o seu projeto.
Primeiro você precisa baixar e instalar o PInvoker. Baixe o instalador PInvoker.msi ou a extensão PInvokerAddin.msi para Visual Studio do site oficial. Acho que isso não deve ser um problema. Basta executar o arquivo desejado e seguir as instruções.
Passo 2
Vejamos um exemplo de como trabalhar com essa ferramenta útil. Inicie o Visual Studio, crie um novo projeto. Um novo item foi adicionado ao menu Ferramentas -> Ferramentas: PInvoker. Clique nele para abrir a janela de configurações do Addin do PInvoker. Selecione o idioma do seu projeto Idioma: C # ou VB. NET. Na lista suspensa Perfis, selecione editar perfis.
etapa 3
A janela de gerenciamento de perfil será aberta. Selecione Criar um novo perfil de importação e clique em Avançar.
Passo 4
Agora você precisa adicionar os arquivos de cabeçalho. Você pode arrastá-los e soltá-los na janela do Assistente de Perfis do PInvoker. Em seguida, especifique o diretório onde esses arquivos estão armazenados.
Etapa 5
A próxima etapa é especificar a própria biblioteca dinâmica. Você também pode arrastá-lo com segurança com o mouse para a janela do assistente de perfil PInvoker.
Etapa 6
Após clicar no botão Concluir, terá início o processo de importação das definições da biblioteca dinâmica selecionada. A conclusão com sucesso da operação será indicada pela inscrição Import sucesso e a lista de nomes de funções da DLL que aparece no campo esquerdo.
Etapa 7
Agora você pode importar facilmente as definições do PInvoke para o seu projeto. No campo esquerdo (1), no campo Tipo, selecione o tipo: função, procedimento, estrutura, enumeração, constante, delegado, etc. No campo Nome, selecione o nome da estrutura necessária. Com um único clique, sua descrição aparecerá no campo central da janela PInvoker (2). Duplo - abrirá sua definição no arquivo de cabeçalho. Clicar no botão Inserir definição (3) irá inserir a definição em seu projeto C # / VB. NET. Agora você pode usar a função DLL importada em seu projeto.