Aprendi a programar C++ com o livro dos irmãos Deitel e sempre programei no ambiente linux e agora preciso utilizar algumas APIs que estão como DLLs e não tenho a minima idéia de como utilizar já que nem mesmo utiliza arquivos cabeçalho.
Alguém tem pode me explicar como utilizar as dlls e onde elas se diferenciam do método comum de incluir arquivos cabeçalho?
Como utilizar DLLs? (C/C++)
3 Respostas
Bom atualmente estou trabalhando num projeto onde estou trabalhando muito com geraçao de dll.
Bom pra começar você deve pesquisar sobre JNI, uma vez que só e possivel integrar java com *.dll e *.so
é atraves de JNI.
Quanto a seu comentário.
Tal afirmação esta bem equivocada, pois as suas dll serão criadas com instruções especificas de JNI e nada
te impedira de usar tecnicas de desenvolvimento em C/C++(ou seja e você podera sim utilizar *.h).
Quanto a JNI e so tu dar uma pesquisada no Google que tem alguns tutorial bacana.
Peço desculpas pela falta de clareza, mas estou codificando em C++ e quando falei sobre não utilizar includes me referia a não ser disponibilizado arquivos de cabeçalho para incorporação da biblioteca.
Oi David.
Dê uma lida nesse artigo:
http://www.pontov.com.br/site/cpp/46-conceitos-basicos/155-como-usar-bibliotecas-cc
Creio que vai te esclarecer um bocado. Se não esclarecer, respondo suas dúvidas depois.
Se precisar realmente a recorrer a ligação dinâmica (única forma de usar uma dll sem os headers e os .lib), você precisará pelo menos conhecer o conteúdo da dll, ou seja, que funções tem lá dentro.
Há no windows programas para explorar as dlls, procure no google por dll inspector.
Para saber como fazer ligação dinâmica, leia:
http://www.codeguru.com/cpp/cpp/cpp_mfc/tutorials/article.php/c9855/DLL-Tutorial-For-Beginners.htm