Ir ao conteúdo
  • Cadastre-se

Código C em VB / dll


Posts recomendados

Boa noite,

tenho alguns códigos em C que precisarei usar em VB. Lendo no tópico sobre a mesma questão, mas em delphi, falaram que é preciso fazer uma dll com o código C, depois é só chamar. Mas eu sou extremamente leigo em se tratando de dlls, portanto gostaria de saber como deveria fazer.

Uma ideia que me deram (ainda não tive tempo para testar) é salvar o código em C com a extensão .dll, mas ninguém sabia se iria funcionar ou não. O código em C ficaria algo parecido com isso?

int main(...){
.
.
.
return retorno
}

Obrigado pela ajuda

Link para o comentário
Compartilhar em outros sites

  • Membro VIP

Bom, não conheço lá muita coisa de linguagem C (minha especialidade é VB) mas acredito que não basta apenas salvar com a extensão DLL, deve ter uma forma de compilar o projeto para funcionar especificamente como uma DLL.

Teria que ver direito como se faz, do contrário o s.o. pode não reconhecer esse arquivo como sendo uma DLL com funções e rotinas que possam ser utilizadas por outros programas.

Agora para chamar uma função ou rotina de uma DLL em C para dentro do VB, é da mesma forma que se faz com APIs do Windows, algo como nesse formato:

Private (ou Public) Declare Function (ou Sub) Nome_Da_Funcao_Ou_Rotina Lib "Nome_Da_DLL" (ByVal Argumento As Tipo-De_Dados_VB) As Tipo_De_Dados_VB

[]'s

Link para o comentário
Compartilhar em outros sites

Saudações pessoal!

Gustavo, simplesmente mudando a extensão não irá funcionar.

Seu compilador deve fornecer a opção de compilar como DLL o programa. Caso não tenha, não será possível criar uma DLL com ele.

Eu utilizo o Borland C++ Builder 7, e já fiz umas DLLs com o Micosoft Visual C++ 5. É fácil lendo a ajuda dos compiladores, eu que não sabia nada como fazer acabei aprendendo alguma coisa.

Seria interessante você dar uma pesquisada na ajuda do compilador porque lá vai estar falando algo sobre a mecânica das DLLs, que é importante de saber para poder programar a sua. A estrutura de um código que vai ser compilado como DLL possui algumas diferenças em relação a algum que vai ser um programa normal.

Na sua DLL você criará um código parecido com esse, com as funções que você deseja exportar:


int func1 (void) {
...
}

int func2 (int) {
...
}

Não há uma função main() em DLLs.

Daí então, compilada a DLL, você pode chamá-la de dentro do seu programa em VB como o Clemente Silva falou.

Dê uma olhada aí no seu compilador, quando você começar a programar vai postando aí que a gente vai trocando experiências.

Tranzorb.

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!