Module: Win32

Extended by:
FFI::Library
Defined in:
lib/uia/library/win32.rb

Class Method Summary collapse

Class Method Details

.find_window(parent, &block) ⇒ Object



25
26
27
28
29
30
31
32
33
# File 'lib/uia/library/win32.rb', line 25

def find_window(parent, &block)
  found_window = nil
  window_callback = FFI::Function.new(:bool, [:long, :pointer], {convention: :stdcall}) do |handle, _|
    found_window = handle if block.call handle
    !found_window
  end
  Win32.enum_child_windows parent, window_callback, 0
  found_window
end

.window_title(handle) ⇒ Object



18
19
20
21
22
23
# File 'lib/uia/library/win32.rb', line 18

def window_title(handle)
  length = window_title_length(handle) + 1
  title = FFI::MemoryPointer.new :char, length
  _window_title handle, title, length
  title.read_string
end