If no BeRTOS version is selected the Wizard automatically select the latest
[bertos.git] / wizard / winreg_importer.py
index 4e5131a9e1a120cb18194d1dec812d476fa650f0..2030934e9f163efb3df191e56f4776f816706a21 100644 (file)
 \r
 from _winreg import *\r
 \r
 \r
 from _winreg import *\r
 \r
-DIR_KEY = OpenKey(HKEY_LOCAL_MACHINE, "SOFTWARE\Develer\BeRTOS SDK\BeRTOS Dirs")\r
-TOOLCHAIN_KEY = OpenKey(HKEY_LOCAL_MACHINE, "SOFTWARE\Develer\BeRTOS SDK\Toolchain Executables")\r
+# Open the registry keys. When the keys don't exist it do nothing\r
+try:\r
+    DIR_KEY = OpenKey(HKEY_LOCAL_MACHINE, "SOFTWARE\Develer\BeRTOS SDK\BeRTOS Dirs")\r
+except WindowsError:\r
+    DIR_KEY = None\r
+\r
+try:\r
+    TOOLCHAIN_KEY = OpenKey(HKEY_LOCAL_MACHINE, "SOFTWARE\Develer\BeRTOS SDK\Toolchain Executables")\r
+except WindowsError:\r
+    TOOLCHAIN_KEY = None\r
 \r
 def getBertosDirs():\r
     """\r
 \r
 def getBertosDirs():\r
     """\r
@@ -20,7 +28,7 @@ def getBertosDirs():
     """\r
     return getFromRegistry(DIR_KEY)\r
 \r
     """\r
     return getFromRegistry(DIR_KEY)\r
 \r
-def getBertosToolchain():\r
+def getBertosToolchains():\r
     """\r
     Returns the path of the executables of the toolchains installed by the BeRTOS\r
     SDK installer.\r
     """\r
     Returns the path of the executables of the toolchains installed by the BeRTOS\r
     SDK installer.\r
@@ -33,10 +41,12 @@ def getFromRegistry(key):
     """\r
     index = 0\r
     items = []\r
     """\r
     index = 0\r
     items = []\r
-    while True:\r
-        try:\r
-            item = EnumValue(TOOLCHAIN_KEY, index)[1]\r
-            items.append(item)\r
-        except WindowsError:\r
-            break\r
+    if key:\r
+        while True:\r
+            try:\r
+                item = EnumValue(key, index)[1]\r
+                items.append(item)\r
+                index += 1\r
+            except WindowsError:\r
+                break\r
     return items
\ No newline at end of file
     return items
\ No newline at end of file