123456789_123456789_123456789_123456789_123456789_

Class: Win32::Registry::PredefinedKey

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_DWORD_LITTLE_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(key, subkey, desired = KEY_ALL_ACCESS, opt = REG_OPTION_RESERVED).

.expand_environ

Replace %w+% into the environment value of what is contained between the %‘s This method is used for REG_EXPAND_SZ.

.new

initialize.

.open

open(key, subkey, desired = KEY_READ, opt = REG_OPTION_RESERVED).

.time2wtime

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

.type2name

Convert registry type value to readable string.

.wtime2time

Convert 64-bit FILETIME integer into Time object.

Instance Attribute Summary

::Win32::Registry - Inherited

#created?

Returns if key is created ((newly)).

#disposition

Disposition value (REG_CREATED_NEW_KEY or REG_OPENED_EXISTING_KEY).

#hkey

Returns key handle value.

#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 predefeined 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 subkeys.

#each_value

Enumerate values.

#flush

Write all the attributes into the registry file.

#info

Returns key information as Array of: :num_keys.

#inspect,
#keys

return keys as an array.

#name

Full path of key such as ‘HKEY_CURRENT_USERSOFTWAREfoobar’.

#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 200

def initialize(hkey, keyname)
  @hkey = hkey
  @parent = nil
  @keyname = keyname
  @disposition = REG_OPENED_EXISTING_KEY
end

Instance Method Details

#class

[ GitHub ]

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

def class
  Registry
end

#close

Predefined keys cannot be closed

Raises:

[ GitHub ]

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

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