0

我有一个需要使用 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)

但显然,这会导致类型错误。有没有人有任何建议来完成这件事?

4

1 回答 1

0

这是不可能的。问题是子进程所做的就是假装在命令提示符中输入命令。您可以访问 myfile.exe 的源代码吗?您可以轻松地将字节表示为字符串或数字。

于 2012-09-30T17:17:01.790 回答