public byte[] _enumValueName(int key, int valueNameIndex, int maxValueNameLength) throws RegistryErrorException
  {
    try
    {
      return (byte[])enumValue.invoke(null, new Object[] {new Integer(key), new Integer(valueNameIndex), new Integer(maxValueNameLength)});
    }
    catch (InvocationTargetException ex)
    {
      throw new RegistryErrorException(ex.getMessage());
    }
    catch (IllegalArgumentException ex)
    {
      throw new RegistryErrorException(ex.getMessage());
    }
    catch (IllegalAccessException ex)
    {
      throw new RegistryErrorException(ex.getMessage());
    }
  }