Files
pyinstaller/hooks/hookutils.py
T

23 lines
609 B
Python

#!/usr/bin/env python
def exec_statement(stat):
"""Executes a Python statement in an externally spawned interpreter, and
returns anything that was emitted in the standard output as a single string.
"""
import os, tempfile, sys
fnm = tempfile.mktemp()
exe = sys.executable
# Using "echo on" as a workaround for a bug in NT4 shell
if os.name == "nt":
cmd = '"echo on && "%s" -c "%s" > "%s""' % (exe, stat, fnm)
else:
cmd = '"%s" -c "%s" > "%s"' % (exe, stat, fnm)
os.system(cmd)
txt = open(fnm, 'r').read()[:-1]
os.remove(fnm)
return txt