为什么在使用子进程(python)启动应用程序(windows)时更改了参数?

为什么在使用子进程(python)启动应用程序(windows)时更改了参数?,python,debugging,parameters,parameter-passing,Python,Debugging,Parameters,Parameter Passing,我使用下面的python代码启动调试器和带有参数的应用程序(我自己编写的一个简单代码): debugger=r'C:\Program Files (x86)\Windows Kits\10\Debuggers\x86\windbg.exe' exe='test.exe' argument='\x01\x02...\xff'#from 0x01 to 0xff subprocess.Popen(debugger+" "+exe+" "+argument) 这是可行的,但当我在main函数中设置

我使用下面的python代码启动调试器和带有参数的应用程序(我自己编写的一个简单代码):

debugger=r'C:\Program Files (x86)\Windows Kits\10\Debuggers\x86\windbg.exe'
exe='test.exe'
argument='\x01\x02...\xff'#from 0x01 to 0xff

subprocess.Popen(debugger+" "+exe+" "+argument)
这是可行的,但当我在main函数中设置断点并检查参数时,argv[]似乎并不完全正确:

似乎“\x09”和“\x20”已更改为“\x00”,而“\x22”已不存在


那怎么了?我这样做是否有误?

带有参数的命令应该作为列表传递给
Popen

subprocess.Popen([debugger, exe, argument])

显示整个代码,而不是