These files are a subset of the python-2.7.2.tgz distribution from python.org. Changed files from PyMod-2.7.2 have been copied into the corresponding directories of this tree, replacing the original files in the distribution. Signed-off-by: daryl.mcdaniel@intel.com git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13197 6f19259b-4bc3-4df7-8a09-765794883524
		
			
				
	
	
		
			58 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			58 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
"""Add Python to the search path on Windows
 | 
						|
 | 
						|
This is a simple script to add Python to the Windows search path. It
 | 
						|
modifies the current user (HKCU) tree of the registry.
 | 
						|
 | 
						|
Copyright (c) 2008 by Christian Heimes <christian@cheimes.de>
 | 
						|
Licensed to PSF under a Contributor Agreement.
 | 
						|
"""
 | 
						|
 | 
						|
import sys
 | 
						|
import site
 | 
						|
import os
 | 
						|
import _winreg
 | 
						|
 | 
						|
HKCU = _winreg.HKEY_CURRENT_USER
 | 
						|
ENV = "Environment"
 | 
						|
PATH = "PATH"
 | 
						|
DEFAULT = u"%PATH%"
 | 
						|
 | 
						|
def modify():
 | 
						|
    pythonpath = os.path.dirname(os.path.normpath(sys.executable))
 | 
						|
    scripts = os.path.join(pythonpath, "Scripts")
 | 
						|
    appdata = os.environ["APPDATA"]
 | 
						|
    if hasattr(site, "USER_SITE"):
 | 
						|
        userpath = site.USER_SITE.replace(appdata, "%APPDATA%")
 | 
						|
        userscripts = os.path.join(userpath, "Scripts")
 | 
						|
    else:
 | 
						|
        userscripts = None
 | 
						|
 | 
						|
    with _winreg.CreateKey(HKCU, ENV) as key:
 | 
						|
        try:
 | 
						|
            envpath = _winreg.QueryValueEx(key, PATH)[0]
 | 
						|
        except WindowsError:
 | 
						|
            envpath = DEFAULT
 | 
						|
 | 
						|
        paths = [envpath]
 | 
						|
        for path in (pythonpath, scripts, userscripts):
 | 
						|
            if path and path not in envpath and os.path.isdir(path):
 | 
						|
                paths.append(path)
 | 
						|
 | 
						|
        envpath = os.pathsep.join(paths)
 | 
						|
        _winreg.SetValueEx(key, PATH, 0, _winreg.REG_EXPAND_SZ, envpath)
 | 
						|
        return paths, envpath
 | 
						|
 | 
						|
def main():
 | 
						|
    paths, envpath = modify()
 | 
						|
    if len(paths) > 1:
 | 
						|
        print "Path(s) added:"
 | 
						|
        print '\n'.join(paths[1:])
 | 
						|
    else:
 | 
						|
        print "No path was added"
 | 
						|
    print "\nPATH is now:\n%s\n" % envpath
 | 
						|
    print "Expanded:"
 | 
						|
    print _winreg.ExpandEnvironmentStrings(envpath)
 | 
						|
 | 
						|
if __name__ == '__main__':
 | 
						|
    main()
 |