Я перенаправил стандартный вывод java.exe с помощью канала. Теперь я читаю вывод, используя ReadFile и буфер символов:
ReadFile( childStdOUTRd, buffer, sizeof(char) * 4096, &read, NULL);
Буферу будут назначены правильные данные. Но если я изменю его на TCAHR[4096]:
ReadFile( childStdOUTRd, buffer, sizeof(TCHAR) * 4096, &read, NULL);
Буфер получил тарабарщину. Я что-то пропустил?