class TurboRex::Windows::COM::COMRegistry::CLSIDEntry
Constants
- InprocHandler
- InprocHandler32
- InprocServer
- InprocServer32
- LocalServer
- LocalServer32
Attributes
clsid[R]
inproc_handler[RW]
inproc_handler32[RW]
inproc_server[RW]
inproc_server32[RW]
local_server[RW]
local_server32[RW]
prog_id[RW]
treat_as[RW]
typelib[RW]
Public Class Methods
from_registry(reg_key)
click to toggle source
# File lib/turborex/windows/com/com_registry.rb, line 31 def self.from_registry(reg_key) return unless reg_key.keyname =~ /^\{[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\}$/i clsid_entry = new(reg_key.keyname.delete('{}')) reg_key.each_key do |k| reg_key.open(k) do |sub_key| case k.downcase when 'inprocserver32' clsid_entry.inproc_server32 = InprocServer32.new clsid_entry.inproc_server32.path = sub_key[''] rescue nil clsid_entry.inproc_server32.threading_model = (sub_key['ThreadingModel'] rescue 'sta') when 'localserver32' clsid_entry.local_server32 = LocalServer32.new clsid_entry.local_server32.path = sub_key[''] rescue nil clsid_entry.local_server32.server_executable = sub_key['ServerExecutable'] rescue nil when 'progid' @progid = sub_key[''] rescue nil when 'treatas' @treat_as = sub_key[''] rescue nil when 'typelib' @typelib = sub_key[''] rescue nil end end end clsid_entry end
new(clsid)
click to toggle source
# File lib/turborex/windows/com/com_registry.rb, line 27 def initialize(clsid) @clsid = clsid end