viernes, septiembre 29, 2006

Mezclando Managed Code and UnManaged Code

En estos dias he tenido la talacha de tener que importar y/o usar Dll's escritos en VB 6 (grrrr) y pa acabarla sin nada de documentacion por parte de los creadores de los Dll, simplemente no soportan .Net, y pues claro hay que escarbar en la isla del internet a ver que se encuentra por ahi... Alguien es chucho para esto? Escribame o mandeme un comentario, jajaja!! o pongan algo en el chat de este Blog!!

Ire actualizando esta entrada conforme vaya avanzando...

Lo poco que se es que hay un Record declarado como el sig:

Public Type registro_INFO
  Clave As String * 19
  archivoclave As String * 256
  archivover As String * 256
  password As String * 256
End Type

y el DLL exporta una funcion como esta:

GeneraArchivoDig(ByVal strArchOrig As String, ByVal tipo As Long, ByRef VALORES() As registro_INFO) As Long

El dll es una biblioteca dinamica pero no es de tipo COM...

Aaahh, muy bien gracias al comentario de Carlos, y comence a sospechar de que tal vez el DLL no esta hecho en VB, empeze a escarbar un poco mas y la Doc que tengo solo dice como utilizarla en VB... pero ya encontre algo mas... encontre las definiciones en C (en otro lado y no el doc), y son asi:

typedef struct struct_INFO
{

  char Clave[19],
  archivoclave[256],
  archivover[256],
  password[256]

} struct_INFO ;

int GeneraArchivoDig(char *strArchOrig, int tipo, struct struct_INFO *VALORES);

 

 

Ahh, ya bajaste el patch de Delphi, bueno si se te paso aqui te dejo un link de donde puedes bajarlo, busca Turbo Explorer hotfix rollup..

Y claro ya esta disponible otro sreencast de Nick Hodges:

28.- Live Templates (Post)

Por ultimo, si eres Delphiniano te invito a que te apuntes en el mapa de los Delphinautas, puse un mapita en la "sidebar" de este blog, ahi seleccionalo y dale clic an Add, o ve directamente a la pagina:

http://www.frappr.com/delphinautes

Saludos!

1 comentarios:

Carlos Madrigal dijo...

Si se trata de DLLs VB6, o sea COM, no debes tener mucho problema. En VS es tan fácil como agregar una referencia, pero en esta ocasión, usa la segunda pestaña (la que dice COM) para localizar tus DLLs VB6. VS crea envolventes .NET-2-COM automáticamente.