24 # Start-of-Header |
24 # Start-of-Header |
25 name = "CxFreeze Plugin" |
25 name = "CxFreeze Plugin" |
26 author = "Detlev Offenbach <detlev@die-offenbachs.de>" |
26 author = "Detlev Offenbach <detlev@die-offenbachs.de>" |
27 autoactivate = True |
27 autoactivate = True |
28 deactivateable = True |
28 deactivateable = True |
29 version = "5.0.3" |
29 version = "5.0.4" |
30 className = "CxFreezePlugin" |
30 className = "CxFreezePlugin" |
31 packageName = "CxFreeze" |
31 packageName = "CxFreeze" |
32 shortDescription = "Show the CxFreeze dialogs." |
32 shortDescription = "Show the CxFreeze dialogs." |
33 longDescription = """This plugin implements the CxFreeze dialogs.""" \ |
33 longDescription = """This plugin implements the CxFreeze dialogs.""" \ |
34 """ CxFreeze is used to generate a distribution package.""" |
34 """ CxFreeze is used to generate a distribution package.""" |
90 try: |
90 try: |
91 import winreg |
91 import winreg |
92 except ImportError: |
92 except ImportError: |
93 # give up ... |
93 # give up ... |
94 return None |
94 return None |
95 |
|
96 version = str(sys.version_info.major) + '.' + \ |
|
97 str(sys.version_info.minor) |
|
98 |
95 |
99 try: |
96 def getExePath(branch): |
100 software = winreg.OpenKey(winreg.HKEY_LOCAL_MACHINE, 'Software') |
97 version = str(sys.version_info.major) + '.' + \ |
101 python = winreg.OpenKey(software, 'Python') |
98 str(sys.version_info.minor) |
102 pcore = winreg.OpenKey(python, 'PythonCore') |
99 try: |
103 version = winreg.OpenKey(pcore, version) |
100 software = winreg.OpenKey(branch, 'Software') |
104 installpath = winreg.QueryValue(version, 'InstallPath') |
101 python = winreg.OpenKey(software, 'Python') |
105 return os.path.join(installpath, 'Scripts', exe) |
102 pcore = winreg.OpenKey(python, 'PythonCore') |
106 except WindowsError: # __IGNORE_WARNING__ |
103 version = winreg.OpenKey(pcore, version) |
107 return None |
104 installpath = winreg.QueryValue(version, 'InstallPath') |
|
105 return os.path.join(installpath, 'Scripts', exe) |
|
106 except WindowsError: # __IGNORE_WARNING__ |
|
107 return None |
|
108 |
|
109 exePath = getExePath(winreg.HKEY_CURRENT_USER) |
|
110 if not exePath: |
|
111 exePath = getExePath(winreg.HKEY_LOCAL_MACHINE) |
|
112 return exePath |
108 else: |
113 else: |
109 # |
114 # |
110 # Linux, Unix ... |
115 # Linux, Unix ... |
111 exe = 'cxfreeze' |
116 exe = 'cxfreeze' |
112 if Utilities.isinpath(exe): |
117 if Utilities.isinpath(exe): |