Python subprocess.call () завершается ошибкой при использовании pythonw.exe

У меня есть некоторый код Python, который работает правильно, когда я использую python.exe для его запуска, но не работает, если я использую pythonw.exe.

    def runStuff(commandLine):
        outputFileName = 'somefile.txt'
        outputFile = open(outputFileName, "w")

        try:
            result = subprocess.call(commandLine, shell=True, stdout=outputFile)
        except:
            print 'Exception thrown:', str(sys.exc_info()[1])

    myThread = threading.Thread(None, target=runStuff, commandLine=['whatever...'])
    myThread.start()

Я получаю сообщение:

    Exception thrown: [Error 6] The handle is invalid

Однако, если я не укажу параметр 'stdout', subprocess.call () запустится нормально.

Я вижу, что pythonw.exe может перенаправлять сам вывод, но я не понимаю, почему я не могу указать стандартный вывод для нового потока.

Ответы на вопрос(3)

Ваш ответ на вопрос