Folks, I have to make a quick demo of how a VS C++ coder can return a
Unicode string from a function back to a C# caller. Easy I thought... I
haven't written serious C++ since 2004 and things have changed for the
worse. The introduction of 'W' wide character support has blown everything
to the merdehouse. I don't even know which "string" to use, but I guess
that std:string (or std:wstring actually) is the preferred modern choice.
Then there are all the type aliases (wchar_t, LPCWSTR, etc). Then I find
many library functions (like localtime) are deprecated and cause compile
errors. The whole C++ language and ecosystem is now bigger than a
cyclotron. Anyway, I've pasted the code snippets here:

[image: image.png]

[image: image.png]

Unfortunately all I get back is a garbage string full of \uDDDD characters.
I've tried dozens of combinations of changes everywhere, even putting
everything back to plain ASCII, but nothing will give me a good string back
from the function.

Does anyone know for sure how to get a Unicode string back from C++? Web
searches produce hundreds of contradictory suggestions, all of which don't
compile, don't work or crash.

Thanks
*Greg Keogh*

Reply via email to