123456789_123456789_123456789_123456789_123456789_

Class: Win32::Registry::PredefinedKey

Do not use. This class is for internal use only.
Relationships & Source Files
Super Chains via Extension / Inclusion / Inheritance
Class Chain:
Instance Chain:
self, ::Win32::Registry, Enumerable, Constants
Inherits: Win32::Registry
Defined in: ext/win32/lib/win32/registry.rb

Overview

Predefined Keys

Constant Summary

Constants - Included

HKEY_CLASSES_ROOT, HKEY_CURRENT_CONFIG, HKEY_CURRENT_USER, HKEY_DYN_DATA, HKEY_LOCAL_MACHINE, HKEY_PERFORMANCE_DATA, HKEY_PERFORMANCE_NLSTEXT, HKEY_PERFORMANCE_TEXT, HKEY_USERS, KEY_ALL_ACCESS, KEY_CREATE_LINK, KEY_CREATE_SUB_KEY, KEY_ENUMERATE_SUB_KEYS, KEY_EXECUTE, KEY_NOTIFY, KEY_QUERY_VALUE, KEY_READ, KEY_SET_VALUE, KEY_WRITE, MAX_KEY_LENGTH, MAX_VALUE_LENGTH, REG_BINARY, REG_CREATED_NEW_KEY, REG_DWORD, REG_DWORD_BIG_ENDIAN, REG_EXPAND_SZ, REG_FORCE_RESTORE, REG_FULL_RESOURCE_DESCRIPTOR, REG_LEGAL_OPTION, REG_LINK, REG_MULTI_SZ, REG_NONE, REG_NO_LAZY_FLUSH, REG_OPENED_EXISTING_KEY, REG_OPTION_BACKUP_RESTORE, REG_OPTION_CREATE_LINK, REG_OPTION_NON_VOLATILE, REG_OPTION_OPEN_LINK, REG_OPTION_RESERVED, REG_OPTION_VOLATILE, REG_QWORD, REG_QWORD_LITTLE_ENDIAN, REG_REFRESH_HIVE, REG_RESOURCE_LIST, REG_RESOURCE_REQUIREMENTS_LIST, REG_SZ, REG_WHOLE_HIVE_VOLATILE, STANDARD_RIGHTS_READ, STANDARD_RIGHTS_WRITE

Class Method Summary

::Win32::Registry - Inherited

.create

Create or open the registry key subkey under key.

.expand_environ

Replace %-enclosed substrings in str into the environment value of what is contained between the %s.

.open

Open the registry key subkey under key.

.time2wtime

Convert Time object or Integer object time into 64-bit FILETIME.

.type2name

Convert registry type value type to readable string.

.wtime2time

Convert 64-bit FILETIME integer wtime into Time object.

.new

Use self.open, self.create, #open and #create.

Instance Attribute Summary

::Win32::Registry - Inherited

#created?

Returns true if key is created newly.

#disposition

Disposition value (REG_CREATED_NEW_KEY or REG_OPENED_EXISTING_KEY).

#keyname

Same as subkey value of open or create method.

#open?

Returns if key is not closed.

#parent

::Win32::Registry object of parent key, or nil if predefined key.

Instance Method Summary

::Win32::Registry - Inherited

#[]

Read a registry value named name and return its value data.

#[]=

Write value to a registry value named name.

#_dump

marshalling is not allowed.

#close

Close key.

#create

Same as create(self, subkey, desired, opt).

#delete

Alias for #delete_value.

#delete_key

Delete a subkey named name and all its values.

#delete_value

Delete a registry value named name.

#each

Alias for #each_value.

#each_key

Enumerate all subkeys.

#each_value

Enumerate all values in this registry path.

#flush

Write all the attributes into the registry file.

#hkey

Returns key handle value.

#info
Returns key information as Array of: num_keys
#inspect

Retruns inspected string.

#keys

return keys as an array.

#name

Full path of key such as 'HKEY_CURRENT_USER\SOFTWARE\foo\bar'.

#open

Same as open(self, subkey, desired, opt).

#read

Read a registry value named name and return array of [ type, data ].

#read_bin

Read a REG_SZ(read_s), REG_DWORD(read_i), or REG_BINARY(read_bin) registry value named name.

#read_i

Read a REG_SZ(read_s), REG_DWORD(read_i), or REG_BINARY(read_bin) registry value named name.

#read_s

Read a REG_SZ(read_s), REG_DWORD(read_i), or REG_BINARY(read_bin) registry value named name.

#read_s_expand

Read a REG_SZ or REG_EXPAND_SZ registry value named name.

#values

return values as an array.

#write

Write data to a registry value named name.

#write_bin

Write value to a registry value named name.

#write_i

Write value to a registry value named name.

#write_s

Write value to a registry value named name.

#export_string

Constructor Details

.new(hkey, keyname) ⇒ PredefinedKey

[ GitHub ]

  
# File 'ext/win32/lib/win32/registry.rb', line 201

def initialize(hkey, keyname)
  @hkey = Fiddle::Pointer.new(hkey)
  @parent = nil
  @keyname = keyname
  @disposition = REG_OPENED_EXISTING_KEY
end

Instance Method Details

#class

[ GitHub ]

  
# File 'ext/win32/lib/win32/registry.rb', line 214

def class
  Registry
end

#close

Predefined keys cannot be closed

Raises:

[ GitHub ]

  
# File 'ext/win32/lib/win32/registry.rb', line 209

def close
  raise Error.new(5) ## ERROR_ACCESS_DENIED
end