Llamando COM envuelta c # DLL de C ++ no administrado: cómo pasar una 'cadena' y recuperar un valor actualizado

StackOverflow https://stackoverflow.com/questions/3780069

Pregunta

Yo uso interoperabilidad COM a funciones de llamadas en una DLL de C # de mi VC6 archivo DLL de MFC, y esto funciona bien.
Quiero llamar a una función para recuperar los valores de cadena.
¿Cómo declaro una 'cadena' en mi C ++ no administrado?
¿Cómo debe la 'cadena' aparecerá en el código C #?
Actualmente la función de C # en la DLL toma argumentos de cadena árbitro, y mi c # prueba de aplicación funciona muy bien, pero ¿qué es lo que pasa a partir de una llamada no administrado C ++?

Espero que esto tiene sentido. Cualquier ayuda bienvenida, Gracias.

No hay solución correcta

Otros consejos

Problema resuelto.

crear una variable BSTR en mi código VC6:
BSTR clave = SysAllocString (NULL);
Debo llamar a mi C # ensamblaje:
presenter-> GetObject (clave y);
Mi C # función es:
GetObject vacío (clave de cadena ref);

:)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top