Я запускаю процесс благодаря библиотеке Boost с этим кодом, используя класс boost::process::child
.Моя программа работает хорошо.Я запускаю процесс, выполненный кем-то другим, и мне нужно только отправить вещи на его стандартный ввод и прочитать его стандартный вывод.Но я считаю, что не могу доверять владельцу дочернего процесса, поэтому я хотел бы, чтобы процесс мог взаимодействовать с моим основным процессом со стандартным вводом / выводом, но я бы хотел, чтобы он не создавал файлы и не запускал другие процессы (запустив команду втерминал), или делать другие небезопасные вещи.
Я видел несколько способов достичь этого, но они используют другие API, и я не могу применить это к моему процессу повышения.Я хочу, чтобы моя программа была кроссплатформенной (Windows + Linux).
Итак, есть ли способ добиться этого, благодаря библиотеке повышения или с другими библиотеками (но это было бы уместно при использовании дочернего элемента)класс из библиотеки boost::process
)?
РЕДАКТИРОВАТЬ: Я хотел бы, чтобы моя программа была легко дана "обычному" человеку.Поэтому я не могу использовать решение, которое подразумевало бы, чтобы пользователь устанавливал другие вещи, кроме моего исполняемого файла (и, возможно, некоторых библиотек / данных в папке)