我有一个用cpp编写的exe,我想在一个名为Sandboxie的沙箱中执行。 exe文件请求输入(在cpp中使用cin命令),我发现传递参数的唯一方法不是在argv中,而是用于cin是使用echo命令。 exe文件的输出将转到txt文件。 基本上,如果我的程序要求输入一个,那么run命令如下所示:
start "D:\Program Files\Sandboxie\start.exe" /B (echo 3) | exetorun.exe > result.txt
我在这里发现的问题是它不起作用, 所以我找到的解决方案是将参数pass和exe名称的一部分运行并将其插入批处理文件(.bat)并从沙箱中运行它。 那样:
start "D:\Program Files\Sandboxie\start.exe" /B "runExec.bat"
并且runExec.bat将具有:
( echo 3 ) | exetorun.exe > output.txt
现在的问题是我有Sandboxie的基本版本,它不允许你定义一个文件夹,例如,无论你什么时候尝试从那里运行文件 - 它将从沙箱中运行...所以基本上我所有的沙箱都被破坏了。 此外,我认为制作批处理文件的想法非常愚蠢......
我找到的唯一解决方案就是找到一种方法来运行执行所需文件的命令,并在第一个命令中将所需的参数传递给它,而不是创建将执行这些命令的批处理文件。
是否有人知道可以解决此问题的任何方面(另一个沙箱,如何运行命令而非批处理文件)?
谢谢!