我正在尝试在运行命令时捕获cmd.exe的输出。我正在尝试捕获Unicode输出以支持其他语言。我的代码现在可以正常工作,以便将Unicode从内置命令恢复到cmd.exe。如迪尔。但是,如果我尝试运行外部命令(例如“ net user”或“ ipconfig”),则不会输出unicode。
我确实进行了读取,发现这是由于我的管道是文件管道。 Ipconfig.exe确定是否正在打印到控制台。如果要打印到控制台,它将使用WriteFileW并输出unicode。否则它只打印ANSI,我得到????????用于任何Unicode。
j
我的问题是我该如何更改管道从ipconfig之类的外部命令获取信息的方式,以便它支持unicode。