diff --git a/src/csharp_utils.h b/src/csharp_utils.h index fd98931..a816eda 100644 --- a/src/csharp_utils.h +++ b/src/csharp_utils.h @@ -22,13 +22,17 @@ namespace CSharp { return msclr::interop::marshal_as(value); } inline QString to_qstring(System::String^ value) { - return QString::fromStdString(to_string(value)); + msclr::interop::marshal_context ctx; + return QString::fromWCharArray(ctx.marshal_as(value)); } template inline System::String^ from_string(Str const& string) { return msclr::interop::marshal_as(string); } + inline System::String^ from_string(QString const& string) { + return msclr::interop::marshal_as(string.toStdWString().c_str()); + } }