Implementar Plugins vGuid de la v6 en v7


([N4] velavisual) #1

Hola,

Os adjunto imágenes de los pasos que he seguido a la hora de velnear el plugins vGuid de la versión 6 de velneo en la versión 7 de velneo.

 

Desconozco si la DLL correspondiente está compilada para su uso correcto en v7 o por el contrario declaro algún paso de forma incorrecta en el proyecto de aplicación.

 

También preguntar si en este caso, es lo mismo poner la ejecución de la función correspondiente en el lado del proyecto de aplicación (vClient) que en el proyecto de datos (vserver)

 

Me devuelve siempre valor 0

 

Gracias

[attachment=6839,691]


([N4] velavisual) #2

Hola,

 

He modificado la función vGuid pasando previamente el valor a una variable de retorno.

Sigue igual, me duelve 0.

 

[attachment=6842,692]


([N4] Jorge) #3

Creo que tu problema está en la definición de la Convención. Ha de ser __cdecl y no C_DEFAULT

Te recomiendo el post que publicamos no hace mucho en nuestro blog; <font color="#4c4c4c">Velneo y un largo día con C++

 

 


([N4] velavisual) #4

@jorge.hontoria.tipesoft

 

Gracias por la observación, lo he probado con distintas convenciones y no me funciona.

El post que mencionas, ya lo conocía, gracias por tus post.

 

Si alguien puede dar alguna pista más o hace la prueba correspondiente se lo agradecería.

 

Gracias

 

 


([N4] Jorge) #5

Por un lado:

Asegurate de que la librería la copie automáticamente en el directorio cacherun...

Escribe como nombre GetGUIDString en el campo Nombre de la definicion de la función...

Si sigue sin funcionar es posible que tenga que ver con la conversión de tipos <font size="2">LPCTSTR a const char*

¿Que version de S.O. utilizas?...


([N4] Jorge) #6

He realizado la integración en v7 y me ha funcionado correctamente, por lo que has de descartar el tema de la conversión de tipos de datos y de problemas con la librería...

Asegurate de escribir como nombre GetGUIDString en el campo Nombre de la definicion de la función...

 

Te paso la caja... en zip...

[attachment=6865,697] [attachment=6865,698]


([N4] velavisual) #7

@jorge, solucionado.

 

El problema lo tenía en la declaración de la función GetGUIDString cuya convención estaba puesta en CX_86_CDECL, al iual que lo tenía en las propiedades de la DLL.

 

Una vez mirado tu caja (gracias por ello) ví que la diferencia es que tienes puesto C_DEFAULT en la función GetGUIDString.

 

Tema solucionado y muchas gracias por ello.

P.D. El s.o. es xp home


([N4] Jorge) #8

Me alegro por la solución.

He probado con C_DEFAULT en ambos (librería y función) y también funciona correctamente, por lo que no tengo claro cuál era el problema... en fin cosas que pasan...