Foro de elhacker.net

Programación => Programación C/C++ => Mensaje iniciado por: calk9 en 4 Septiembre 2011, 19:33 pm



Título: Usar DLL de VB6 en C
Publicado por: calk9 en 4 Septiembre 2011, 19:33 pm
Buenas a todos, he creado una DLL en VB6 pero necesito llamar a la misma desde otra DLL en C. He aquí el código para llamarla en VB6 aver si pueden decirme como llamarla en C y utilizarla en el main de la DLL, lo primero que carga.

Código:
Private Declare Function Saludo Lib "Prueba.dll" () As String

Y el código de la función saludo en la DLL de vb6 es el siguiente:

Código:
Option Explicit

Public Function Saludo() As String
    Saludo = "Hola desde la DLL Prueba"
End Function

El código es de la página de "elGuille".

Gracias.


Título: Re: Usar DLL de VB6 en C
Publicado por: Riki_89D en 4 Septiembre 2011, 20:08 pm
Usa LoadLibrary(); y GetProcAddress();


bye


Título: Re: Usar DLL de VB6 en C
Publicado por: calk9 en 4 Septiembre 2011, 20:40 pm
Ajam, y como sería el código para ejecutar una función de la DLL que estoy cargando? No tengo muchos conociemientos...

Gracias.


Título: Re: Usar DLL de VB6 en C
Publicado por: Riki_89D en 4 Septiembre 2011, 20:57 pm
Ai tiene tu codigo :

http://msdn.microsoft.com/en-us/library/ms686944(v=vs.85).aspx

;)


Título: Re: Usar DLL de VB6 en C
Publicado por: calk9 en 4 Septiembre 2011, 21:09 pm
Gracias pero... en donde tendría que poner el nombre de la función de mi DLL, no entiendo mucho el code...


Título: Re: Usar DLL de VB6 en C
Publicado por: Queta en 4 Septiembre 2011, 21:14 pm
No pretendas hacer una DLL sin tener un mínimo de conocimientos del lenguaje y que te salga a la primera. Aprende C/C++ y pásate luego por aquí:

http://msdn.microsoft.com/en-us/library/ms235636.aspx (http://msdn.microsoft.com/en-us/library/ms235636.aspx)


Título: Re: Usar DLL de VB6 en C
Publicado por: Riki_89D en 4 Septiembre 2011, 21:55 pm

Gracias pero... en donde tendría que poner el nombre de la función de mi DLL, no entiendo mucho el code...

El nombre de la funcion va en GetProcAddress().....

yel de la DLL Va en al funcion LoadLibrary(); esta funcion devuelve un manejador del modulo cargado,y ese manejador (HMODULE) se lo apsa a GetProcAddress que devuele la direccion de la funcion/variable.

pero como dice el compi,sera mejor que aprendas a crear un DLL y algo mas de C/c++,sino mal vamos amigo...


saludos


Título: Re: Usar DLL de VB6 en C
Publicado por: calk9 en 4 Septiembre 2011, 22:32 pm
Gracias...