使用python中的命令行参数运行C#exe,给出调用的进程错误:command
我正在尝试在Windows 2019中运行此子进程:使用python中的命令行参数运行C#exe,给出调用的进程错误:command,python,windows,subprocess,Python,Windows,Subprocess,我正在尝试在Windows 2019中运行此子进程: random_token = 'abcd' process = subprocess.check_output(r'"C:\Users\Administrator\Documents\OpenQuant 2014\Solutions\Test_Multi_Vol_7\Backtest\bin\Debug\Backtest.exe" ' + random_token + ' 2020-06-01 2020-06-05')
random_token = 'abcd'
process = subprocess.check_output(r'"C:\Users\Administrator\Documents\OpenQuant 2014\Solutions\Test_Multi_Vol_7\Backtest\bin\Debug\Backtest.exe" ' + random_token + ' 2020-06-01 2020-06-05')
但我一直得到:
---------------------------------------------------------------------------
CalledProcessError Traceback (most recent call last)
<ipython-input-18-570224617f86> in <module>
----> 1 process = subprocess.check_output(r'"C:\Users\Administrator\Documents\OpenQuant 2014\Solutions\Test_Multi_Vol_7\Backtest\bin\Debug\Backtest.exe" ' + random_token + ' 2020-06-01 2020-06-05')
2
3
4 #process = subprocess.check_output(['"C:\\Users\\Administrator\\Documents\\OpenQuant 2014\\Solutions\\Test_Multi_Vol_7\\Backtest\\bin\\Debug\\Backtest.exe"', random_token, '2020-06-01', '2020-06-05'])
C:\ProgramData\Anaconda3\lib\subprocess.py in check_output(timeout, *popenargs, **kwargs)
413 kwargs['input'] = empty
414
--> 415 return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
416 **kwargs).stdout
417
C:\ProgramData\Anaconda3\lib\subprocess.py in run(input, capture_output, timeout, check, *popenargs, **kwargs)
514 retcode = process.poll()
515 if check and retcode:
--> 516 raise CalledProcessError(retcode, process.args,
517 output=stdout, stderr=stderr)
518 return CompletedProcess(process.args, retcode, stdout, stderr)
CalledProcessError: Command '"C:\Users\Administrator\Documents\OpenQuant 2014\Solutions\Test_Multi_Vol_7\Backtest\bin\Debug\Backtest.exe" KUODFMHA 2020-06-01 2020-06-05' returned non-zero exit status 3762504530.
它表明命令行参数没有正确传递,导致仅传递1个参数的错误
pipe = subprocess.Popen(r'"C:\Users\Administrator\Documents\OpenQuant 2014\Solutions\Test_Multi_Vol_7\Backtest\bin\Debug\Backtest.exe" ' + random_token + ' 2020-06-01 2020-06-05',stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
stdout, stderr = pipe.communicate()