Si, se me habia pasado declarar los tipos dentro de manera public, pero ahora me surgieron mas errores.Mas que nada con la asignacion de los campos en enum.No son compatibles los tipos, obviamente, unos son strings y no puedo pasarlos a int. Pero como asigno un valor en un enum (que por lo general es un string) a otro que es un int por ejemplo.
Es asi:Código: Text[DllImport("dll.dll")]public unsafe static extern int funcion_externa(modo tipo_modo, Byte[] dato1, formato tipo_formato, void valor,Byte[] objeto,out Byte*[] dato_de_vuelta,out int* largo_dato,out Error* tipo_error); Declaro cada uno de los parametros y esta es mi llamada a la funcion dentro de unsafe:Código: Textfuncion_externa(modo tipo_modo, dato1, tipo_formato, objeto,out dato_de_vuelta,out largo_dato, out tipo_error); Estoy omitiendo el VOID en los 2 ejemplos, arriba solo lo puse como debería ir en el codigo.Por lo que he averiguado los miembros VOID no se declaran, asi que opté por omitirlos, pero aun no me funciona la llamada, porque cuando llamo a la funcion me envia otro error en el ultimo parametro:"No se puede calcular la referencia de 'parameter #7: Los punteros no pueden hacer referencia a estructuras con referencias calculadas. Utilice ByRef en su lugar."