RESPONDER UNA PREGUNTA

Si para responder la pregunta, crees necesario enviar un archivo adjunto, puedes hacerlo a traves del correo [email protected]

    Pregunta:  57130 - AYUDA CON DECLARACIÓN DE VARIABLES PARA DLL
Autor:  Jorge Sanchez
Hola, estoy construyendo una calculadora en visual basic pero mandando a llamar una dll para realizar las acciones como suma resta multiplicación y divición, mi problema esta en que solo puedo correrlo con enteros porque al tratar con decimales no encuentro la variable que acepta el visual basic a la dll. este es mi código de la dll:

extern "C" __declspec(dllexport) float suma(float, float);
float suma(float x, float y)
{
return (x + y);
}

y ahora al llamarlo con el visual basic lo hago asi:

Option Explicit
Public Declare Function suma Lib "Suma.dll" _
(ByVal x As Double, ByVal y As Double) As Double

y mi código en visual basic es este:

Private Sub Comadd_Click()
f = Str(suma(CDbl(Form1.Text2.Text), CDbl(Form1.Text3.Text)))
Text1.Text = f
End Sub

Yá probé cambiando las variables por long, variant, single, etc. tanto en la dll como en el vb. y pues me sale error ó en el mejor caso suma enteros y si hay decimal lo redondea... que puedo hacer?


Nombre
Apellidos
Correo
Comentarios