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 に答える