C/Visual C - ¡¡URGENTE!! DLL Para VB

 
Vista:

¡¡URGENTE!! DLL Para VB

Publicado por Iván Rubio (15 intervenciones) el 02/11/2001 11:09:10
Hola, enmi trabajao me han mandado hacer una DLL en VC++ que se pueda ejecutar desde Visual Basic. No tengo ni idea de que tipo de proyecto hacer ni de declarar las funciones y clases para que sean accesibles desde Visual Basic. Ayuda por favor. ¡¡ES MUY URGENTE!!

Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Creación de una DLL en VC++ para usar en Visual Basic

Publicado por Alejandro (913 intervenciones) el 22/10/2024 17:35:19
Para crear una DLL en Visual C++ que pueda ser utilizada desde Visual Basic, sigue estos pasos:

1. Crear el proyecto de DLL



1. Abre Visual Studio.
2. Selecciona "Crear un nuevo proyecto".
3. Elige "Biblioteca de vínculos dinámicos (DLL)" en C++.
4. Asigna un nombre a tu proyecto y selecciona la ubicación donde deseas guardarlo.
5. Haz clic en "Crear".

2. Configurar el proyecto



1. En el archivo de encabezado (por defecto `YourProjectName.h`), incluye las siguientes directivas para exportar funciones:

1
2
3
4
5
#ifdef YOURPROJECTNAME_EXPORTS
#define YOURPROJECTNAME_API __declspec(dllexport)
#else
#define YOURPROJECTNAME_API __declspec(dllimport)
#endif

2. Declara las funciones que deseas exportar. Por ejemplo:

1
2
3
4
extern "C" {
    YOURPROJECTNAME_API int Sumar(int a, int b);
    YOURPROJECTNAME_API void MostrarMensaje(const char* mensaje);
}

3. Implementar las funciones



En el archivo de implementación (por defecto `YourProjectName.cpp`), implementa las funciones:

1
2
3
4
5
6
7
8
9
10
11
12
#include "YourProjectName.h"
#include <iostream>
 
extern "C" {
    YOURPROJECTNAME_API int Sumar(int a, int b) {
        return a + b;
    }
 
    YOURPROJECTNAME_API void MostrarMensaje(const char* mensaje) {
        MessageBoxA(NULL, mensaje, "Mensaje desde DLL", MB_OK);
    }
}

4. Compilar la DLL



1. Compila el proyecto (Ctrl + Shift + B).
2. Asegúrate de que no haya errores y que se genere el archivo `.dll` en la carpeta de salida del proyecto.

5. Usar la DLL en Visual Basic



1. Abre Visual Basic y crea un nuevo proyecto.
2. En el editor de código, declara las funciones de la DLL:

1
2
Declare Function Sumar Lib "C:\ruta\a\tu\DLL\YourProjectName.dll" (ByVal a As Long, ByVal b As Long) As Long
Declare Sub MostrarMensaje Lib "C:\ruta\a\tu\DLL\YourProjectName.dll" (ByVal mensaje As String)

3. Ahora puedes llamar a las funciones en tu código:

1
2
3
4
5
6
Private Sub Command1_Click()
    Dim resultado As Long
    resultado = Sumar(5, 10)
    MsgBox "El resultado de la suma es: " & resultado
    MostrarMensaje "¡Hola desde Visual Basic!"
End Sub

Notas importantes



- Asegúrate de que la ruta a la DLL en la declaración de funciones sea correcta.
- Si la DLL y el proyecto de Visual Basic están en la misma carpeta, puedes usar solo el nombre de la DLL sin la ruta completa.
- Recuerda que las funciones deben ser declaradas como `extern "C"` para evitar la mangling de nombres, lo que permite que Visual Basic las reconozca correctamente.

¡Buena suerte con tu proyecto, Iván!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar