我有一个需要使用Python 3.2.3打开的exe。我还需要以字节的形式将参数传递给exe。我尝试做类似的事情:
argument = '\x50'*260
subprocess.call([command, argument])
这很好用,但是当我尝试将不可打印的字符作为'\ x86'之类的参数时,它会转换为'\ x3f'。打印参数会出现以下错误:
UnicodeEncodeError: 'charmap' codec can't encode character '\x86' in position 262: character maps to <undefined>
所以我尝试使用os.system:
command = "C:\myfile.exe "+b"\x50"*260
os.system(command)
但显然,这会导致类型错误。有没有人有任何建议让这件事情完成?
答案 0 :(得分:0)
无法做到。问题在于子进程所做的是假装在命令提示符中键入命令。你有权访问myfile.exe的源码吗?您可以轻松地将字节表示为字符串或数字。