Pregunta: | 46212 - PASANDO CHAR* A UNA FUNCIóN VISUAL BASIC |
Autor: | Jesús Trujillo Gómez |
Hola a todos. Mi duda no debería de ser demasiado difícil, pero es que estoy un poco desesperado jejeje.
Tengo una dll externa hecha en visual basic, con una función definida como: void create_net ( char *sFicheroPatrones, int iNumPatterns, char* sFichDisplay) Llamando funciones desde builder c++ de esta dll me doy cuenta que todas aquellas a las que les paso una cadena de texto \"hola.txt\" o BSTR(\"hola.txt\") me da errores. Alguien sabe como quiere Visual basic que le pase la cadena char* que hace mención al fichero de patrones??Saludos y gracias por adelantado!!! |
Respuesta: | Fernando Gómez |
VB no sabe nada de char*'s. VB entiende solo las cadenas de tipo BSTR. Pero un BSTR no lo creas así como quieres. Tienes que emplear las funciones del API SysAllocString y SysFreeString para asignar y desasignar una cadena. Puedes emplear la clase _b_str para facilitarte la labor.
Saludos. |