execfile() builtin function does not work with UNC paths on Windows platform (Windows 7 x64 has been tested, python 2.6.5) Since standard IO operations successfully process UNC paths, therefore this behavior of execfile() seems to be a bug. Code to reproduce (assuming drive c: is present and you have rw permissions) >>> a=u'\\\\?\\c:\\a.py' >>> open(a,"w").write("print 'hellow'") # successful write to UNC file >>> file(a).read() # successful read from UNC file "print 'hellow'" >>> execfile(a) # ERROR Traceback (most recent call last): File "", line 1, in IOError: [Errno 2] No such file or directory: '\\\\?\\c:\\a.py' See description of UNC naming convention at msdn http://msdn.microsoft.com/en-us/library/aa365247(VS.85).aspx at wikipedia http://en.wikipedia.org/wiki/Path_(computing)#Uniform_Naming_Convention
Since execfile is basically shorthand for exec (open (filename).read ()), and since open (filename) *does* support the full range of filepath syntax on Windows, and since execfile has been removed in py3k in favour of exec (open ...)), and since Python 2.x is nearing its end-of-life, I doubt this issue will garner much sympathy. I haven't actually looked at the code to discover just *why* execfile doesn't support that style of filename. But is there any reason you can't use exec (open (...))?
Reproduced on WinXP. execfile() does not work because it calls the system function stat(); this function does accept UNC paths (like \\machine\share\file), but not paths which contain a wildcard character ('?' or '*') I suggest to remove the leading '\\\\?\\'.