parameters: (valuename, version=None, abi=None)
docstring: Return a value from the Intel compiler registry tree. (Windows only)
docstring_summary: Return a value from the Intel compiler registry tree. (Windows only)
docstring_tokens: Return a value from the Intel compiler registry tree . ( Windows only )
function: def get_intel_registry_value(valuename, version=None, abi=None):
      """
      Return a value from the Intel compiler registry tree. (Windows only)
      """
      # Open the key:
      if is_win64:
          K = 'Software\\Wow6432Node\\Intel\\Compilers\\C++\\' + version + '\\'+abi.upper()
      else:
          K = 'Software\\Intel\\Compilers\\C++\\' + version + '\\'+abi.upper()
      try:
          k = SCons.Util.RegOpenKeyEx(SCons.Util.HKEY_LOCAL_MACHINE, K)
      except SCons.Util.RegError:
          # For version 13 and later, check UUID subkeys for valuename
          if is_win64:
              K = 'Software\\Wow6432Node\\Intel\\Suites\\' + version + "\\Defaults\\C++\\" + abi.upper()
          else:
              K = 'Software\\Intel\\Suites\\' + version + "\\Defaults\\C++\\" + abi.upper()
          try:
              k = SCons.Util.RegOpenKeyEx(SCons.Util.HKEY_LOCAL_MACHINE, K)
              uuid = SCons.Util.RegQueryValueEx(k, 'SubKey')[0]
  
              if is_win64:
                  K = 'Software\\Wow6432Node\\Intel\\Suites\\' + version + "\\" + uuid + "\\C++"
              else:
                  K = 'Software\\Intel\\Suites\\' + version + "\\" + uuid + "\\C++"
              k = SCons.Util.RegOpenKeyEx(SCons.Util.HKEY_LOCAL_MACHINE, K)
  
              try:
                  v = SCons.Util.RegQueryValueEx(k, valuename)[0]
                  return v  # or v.encode('iso-8859-1', 'replace') to remove unicode?
              except SCons.Util.RegError:
                  if abi.upper() == 'EM64T':
                      abi = 'em64t_native'
                  if is_win64:
                      K = 'Software\\Wow6432Node\\Intel\\Suites\\' + version + "\\" + uuid + "\\C++\\" + abi.upper()
                  else:
                      K = 'Software\\Intel\\Suites\\' + version + "\\" + uuid + "\\C++\\" + abi.upper()
                  k = SCons.Util.RegOpenKeyEx(SCons.Util.HKEY_LOCAL_MACHINE, K)
  
              try:
                  v = SCons.Util.RegQueryValueEx(k, valuename)[0]
                  return v  # or v.encode('iso-8859-1', 'replace') to remove unicode?
              except SCons.Util.RegError:
                  raise MissingRegistryError("%s was not found in the registry, for Intel compiler version %s, abi='%s'"%(K, version,abi))
  
          except SCons.Util.RegError:
              raise MissingRegistryError("%s was not found in the registry, for Intel compiler version %s, abi='%s'"%(K, version,abi))
          except SCons.Util.WinError:
              raise MissingRegistryError("%s was not found in the registry, for Intel compiler version %s, abi='%s'"%(K, version,abi))
  
      # Get the value:
      try:
          v = SCons.Util.RegQueryValueEx(k, valuename)[0]
          return v  # or v.encode('iso-8859-1', 'replace') to remove unicode?
      except SCons.Util.RegError:
          raise MissingRegistryError("%s\\%s was not found in the registry."%(K, valuename))
function_tokens: def get_intel_registry_value ( valuename , version = None , abi = None ) : # Open the key: if is_win64 : K = 'Software\\Wow6432Node\\Intel\\Compilers\\C++\\' + version + '\\' + abi . upper ( ) else : K = 'Software\\Intel\\Compilers\\C++\\' + version + '\\' + abi . upper ( ) try : k = SCons . Util . RegOpenKeyEx ( SCons . Util . HKEY_LOCAL_MACHINE , K ) except SCons . Util . RegError : # For version 13 and later, check UUID subkeys for valuename if is_win64 : K = 'Software\\Wow6432Node\\Intel\\Suites\\' + version + "\\Defaults\\C++\\" + abi . upper ( ) else : K = 'Software\\Intel\\Suites\\' + version + "\\Defaults\\C++\\" + abi . upper ( ) try : k = SCons . Util . RegOpenKeyEx ( SCons . Util . HKEY_LOCAL_MACHINE , K ) uuid = SCons . Util . RegQueryValueEx ( k , 'SubKey' ) [ 0 ] if is_win64 : K = 'Software\\Wow6432Node\\Intel\\Suites\\' + version + "\\" + uuid + "\\C++" else : K = 'Software\\Intel\\Suites\\' + version + "\\" + uuid + "\\C++" k = SCons . Util . RegOpenKeyEx ( SCons . Util . HKEY_LOCAL_MACHINE , K ) try : v = SCons . Util . RegQueryValueEx ( k , valuename ) [ 0 ] return v # or v.encode('iso-8859-1', 'replace') to remove unicode? except SCons . Util . RegError : if abi . upper ( ) == 'EM64T' : abi = 'em64t_native' if is_win64 : K = 'Software\\Wow6432Node\\Intel\\Suites\\' + version + "\\" + uuid + "\\C++\\" + abi . upper ( ) else : K = 'Software\\Intel\\Suites\\' + version + "\\" + uuid + "\\C++\\" + abi . upper ( ) k = SCons . Util . RegOpenKeyEx ( SCons . Util . HKEY_LOCAL_MACHINE , K ) try : v = SCons . Util . RegQueryValueEx ( k , valuename ) [ 0 ] return v # or v.encode('iso-8859-1', 'replace') to remove unicode? except SCons . Util . RegError : raise MissingRegistryError ( "%s was not found in the registry, for Intel compiler version %s, abi='%s'" % ( K , version , abi ) ) except SCons . Util . RegError : raise MissingRegistryError ( "%s was not found in the registry, for Intel compiler version %s, abi='%s'" % ( K , version , abi ) ) except SCons . Util . WinError : raise MissingRegistryError ( "%s was not found in the registry, for Intel compiler version %s, abi='%s'" % ( K , version , abi ) ) # Get the value: try : v = SCons . Util . RegQueryValueEx ( k , valuename ) [ 0 ] return v # or v.encode('iso-8859-1', 'replace') to remove unicode? except SCons . Util . RegError : raise MissingRegistryError ( "%s\\%s was not found in the registry." % ( K , valuename ) )