• After more than 30 years running websites and forums I am retiring.

    I have made many friends through the years. I will cherish my time getting to know you. I wish you all the best. This was not an easy decision to make. The cost to keep the communities running has gotten to the point where it's just too expensive. Security certificates, hosting cost, software renewals and everything else has increased threefold. While costs are up ad revenue is down. It's no longer viable to keep things running.

    All sites will be turned off on Thursday 30 November 2023. If you are interested in acquiring any of the websites I own you can Email Schwarz Network.

How to get Unicode output from cl.exe?


Yuri Plyakhin


I have a code that runs "cl.exe" by CreateProcess. Then I parse the output from "cl.exe". All works fine with English characters. But if output contains non-English characters, I get "???????" instead of non-English characters.

As I know, "cl.exe" can create two named pipes and write Unicode output to them, instead of using stderr and stdout.
Also, I've read about an environment variable "VS_UNICODE_OUTPUT". As I've understand that variable causes "cl.exe" to create these two named pipes.

The questions are:
How can I run "cl.exe" in such mode (to get Unicode output)?
What names should I use for pipes?
What value should I set to "VS_UNICODE_OUTPUT", and what does this value mean?

Continue reading...
Top Bottom