Have run smack into a problem with subprocess.open() when running a batch file with unicode characters in the path name. This barfs in 2.6 and 2.7 but works perfectly in 3.2. Was it really just a bug that lasted all the way until py3k??
# -*- coding: utf-8 -*-
o = u"C:\\temp\\test.bat" #"control" case
q = u"C:\\temp\\こんにちは.bat"
ho = open(o, 'r')
hq = open(q, 'r') #so we can open q
ho.close()
hq.close()
import subprocess
subprocess.call(o) #batch runs
subprocess.call(q) #nothing from here on down runs
subprocess.call(q, shell=True)
subprocess.call(q.encode('utf8'), shell=True)
subprocess.call(q.encode('mbcs'), shell=True) #this was suggested elsewhere for older windows