Crear una DLL en .NET y usarla en VFP

1,018 views
Skip to first unread message

Gilberto Gabriel Sandoval Lira

unread,
Feb 24, 2015, 5:54:14 PM2/24/15
to csharp...@googlegroups.com
Hice una librería DLL en .Net y la he usado en VFP. Basado en un artículo de la wiki de Victor Espina.
http://www.victorespina.com.ve/wiki/index.php?title=Crear_una_DLL_en_.NET_y_usarla_en_VFP


El registro de la DLL lo hice desde el programa de instalación que hice por medio de InnoSetup usando la siguiente instrucción en la sección RUN:

[Run]
Filename: "{dotnet40}\RegAsm.exe"; Parameters: /codebase MYLIB.DLL; WorkingDir: {app}; StatusMsg: "Registrando Componentes..."; Flags: runminimized

Y todo funciona bien.


Sin embargo el programa instalado me deja de funcionar. Y me manda un error donde no encuentra la definición de la clase, es como si el registro de la librería DLL nunca se hubiera hecho. Vuelvo a ejecutar el programa de instalación (de InnoSetup) y no funciona, es raro porque la primera vez que lo hice sí funcionó.

He tratado de registrar la DLL con la instrucción sin ningún resultado:
C:\WINDOWS\microsoft.net\framework64\v4.0.30319\regasm mylib.dll /register /codebase /tlb

Al ejecutarla me manda este mensaje:
RegAsm : warning RA0000 : El registro de un ensamblado sin signo con /codebase p
uede provocar que dicho ensamblado interfiera con otras aplicaciones instaladas
en el mismo equipo. El modificador /codebase sólo se utiliza con ensamblados con
 signos. Proporcione al ensamblado un nombre seguro y vuelva a registrarlo.
Se registraron correctamente los tipos
La exportación del ensamblado a 'C:\Sistema\mylib.dll' y el registro de la bi
blioteca de tipos se realizaron correctamente

Intenté utilizar el parámetro /u y volver a registrar sin ningún resultado.

¿Que se puede hacer en estos casos?

Julián May

unread,
Feb 25, 2015, 9:35:40 AM2/25/15
to csharp...@googlegroups.com
Hola buen día me tope con esos inconvenientes cuando empece a utilizar dll desde de C#.

Aqui te va estas lineas de comando 

C:\WINDOWS\microsoft.net\framework\v4.0.30319\RegAsm.exe C:\DLL.dll /tlb:C:\DLL.tlb /codebase

una de las cosas que hice para asegurarme es poner la dll en C:\ directamente y ejecutar este comando en el cmd modo administrador. 
Y funciona perferctamente solo reemplaza el nombre de tu dll y tbl por los tuyos y asegurate de que exista el RegAsm en la carpeta correspondiente.
Te menciono que la dll la puedes tener en tu proyecto y poner la ruta correspondiente pero te repito yo la deje en C:\ para asegurarme.

Cualquier cosa me comentas. 


Saludos.

Julián May

unread,
Feb 25, 2015, 9:40:47 AM2/25/15
to csharp...@googlegroups.com
Aquí te mando dos imagenes de que lo acabo de probar como te decía y funciona correctamente :) 

Saludos.
1.png
2.png

Gilberto Gabriel Sandoval Lira

unread,
Feb 25, 2015, 6:55:16 PM2/25/15
to csharp...@googlegroups.com

Julián muchas gracias por tu respuesta.

Te comento que el día de hoy fuí con mi cliente dispuesto hacer las instrucciones que me recomendaste cuando me encuentro con la sorpresa de que el sistema estaba funcionando como si nada.

Que cosa tan extraña.

De cualquier forma hice lo que me recomendaste y el programa está funcionando bien.

Saludos y gracias !!

Tkthrall

unread,
May 14, 2016, 11:05:12 PM5/14/16
to C#.NET Latinoamérica
Alguno a Probado crear una clase en Net c# con Web Service y Despues querer utilizar los Recursor del Web services con el VFP
El Dll me funciona bien cuando no tengo Referenciado el Web Service .y lo puedo registrar y todo . pero cuando hago Referencia a un Web Services y despues creo mi Dll y lo quiero Registrar en el Zorro no se puede me vota error

Alejandro Castrejon

unread,
May 14, 2016, 11:35:23 PM5/14/16
to csharp...@googlegroups.com
Si, de hecho uno de mis productos SmartFactura es un dll desarrollado en C# para con interfaces com o activeX para antiguas plataformas como VFP

Saludos,
Alejadnro castrejón

El 14 de mayo de 2016, 20:05, Tkthrall <rwro...@gmail.com> escribió:
Alguno a Probado crear una clase en Net c# con Web Service y Despues querer utilizar los Recursor del Web services con el VFP
El Dll me funciona bien cuando no tengo Referenciado el Web Service .y lo puedo registrar y todo . pero cuando hago Referencia a un Web Services y despues creo mi Dll y lo quiero Registrar en el Zorro no se puede me vota error

--
Has recibido este mensaje porque estás suscrito al grupo "C#.NET Latinoamérica" de Grupos de Google.
Visita este grupo en https://groups.google.com/group/csharplatino.

Julián May

unread,
May 17, 2016, 5:28:34 PM5/17/16
to csharp...@googlegroups.com
No se si estoy entendiendo mal si tienes un web service creado desde c# lo puedes consumir sin problemas desde VFP, la dll para que la necesitas ?? 

Es para consumir el web service ? 
Si solo vas a consumir el web service no necesitas una dll de .net para consumirla ya que desde el VFP lo puedes hacer.

Saludos.

Julián May

James Suárez

unread,
Jun 4, 2019, 3:20:53 AM6/4/19
to C#.NET Latinoamérica
No sé porque sigo viendo publicaciones como estas, cuando he liberado una herramienta como kodnet https://github.com/voxsoftware/kodnet 
Reply all
Reply to author
Forward
0 new messages