Как мы пишем не-ASCII символы в STDIN другого процесса?

У меня есть код, который записывает строку в STDIN процесса 7-Zip.

if (!WriteFile(hInput, string.c_str(), dwBytesToWrite, &dwBytesWritten, NULL)) {
logger.error(L"write file failed", GetLastError());
goto Cleanup;
}

Эта строка является вводом пароля в stdin процесса 7-zip. Код работает нормально (процесс 7-Zip может успешно извлечь файл), если пароль содержит все символы ASCII, например: Пароль @ 123. Но произойдет сбой, если пароль @ WSX3edcß, этот код завершится неудачно (процесс 7-Zip получает неправильный пароль).

Напомним, что значение пароля читается из третьего инструмента из командной строки. Затем это значение передается инструменту с помощью именованного канала. Из которого он пишет в 7-почтовый стандарт.

Есть ли способ передать не-ASCII-строку процессу 7-zip?

Я попытался написать wsrting на стандартный ввод в соответствии с вышеуказанным соглашением, но не работает.

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector