Tengo un problema, es el siguiente y espero que me puedan ayudar:
Estoy realizando una aplicacion en c# que utiliza una libreria hecha en c++.
Esta libreria se llama jetft.dll que tiene un metodo que me permite imprimir una cadena de texto, y es el siguiente:
Código C++:
Ver original
extern "C" JQEXT_API int JQ_PrinterPrint(const wchar_t* txt) { return theJQPrinter().print(txt); }
y desde c# la invoco de la siguiente manera:
Código C#:
Ver original
[DllImport("jetft.dll")] public static extern string JQ_PrinterPrint(ref string txt);
y llamo este metodo desde c# asi:
Código c#:
Ver original
string alg = "Texto a imprimir...."; private void button1_Click(object sender, EventArgs e) { JQ_PrinterPrint(ref alg); }
y el problema es que no imprime esa cadena de texto.
Creo que un motivo por el cual no me funciona es porque la libleria c++ recive en su metodo "JQ_PrinterPrint" una variable "const wchar_t* txt" y no se como enviar correctamente esa cadena desde c#.
Agradezco que me puedan ayudar.