Module: WindowsCOM::COMFactory
- Defined in:
- lib/windows_com/common.rb
Class Method Summary collapse
Class Method Details
.[](iface, sclsid) ⇒ Object
159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 |
# File 'lib/windows_com/common.rb', line 159 def self.[](iface, sclsid) Class.new(iface) { const_set :CLSID, WindowsCOM::GUIDFromString(sclsid) def initialize(clsctx = CLSCTX_INPROC) FFI::MemoryPointer.new(:pointer) { |ppv| DetonateHresult(:CoCreateInstance, self.class::CLSID, nil, clsctx, self.class::IID, ppv ) super(ppv.read_pointer) } end } end |