Sha256: 7ee546541c564619e80a4613f759c132438b0a5c213c60bded862e488981fdcf

Contents?: true

Size: 1.26 KB

Versions: 12

Compression:

Stored size: 1.26 KB

Contents

require 'windows/api'
include Windows

module Windows
   module Debug
      API.auto_namespace = 'Windows::Debug'
      API.auto_constant  = true
      API.auto_method    = true
      API.auto_unicode   = false

      API.new('ContinueDebugEvent', 'LLL', 'B')
      API.new('DebugActiveProcess', 'L', 'B')
      API.new('DebugBreak', 'V', 'V')
      API.new('FatalExit', 'I', 'V')
      API.new('FlushInstructionCache', 'LLL', 'B')
      API.new('GetThreadContext', 'LP', 'B')
      API.new('GetThreadSelectorEntry', 'LLP', 'B')
      API.new('IsDebuggerPresent', 'V', 'B')
      API.new('OutputDebugString', 'P', 'V')
      API.new('ReadProcessMemory', 'LLPLP', 'B')
      API.new('SetThreadContext', 'LP', 'B')
      API.new('WaitForDebugEvent', 'PL', 'B')
      API.new('WriteProcessMemory', 'LLPLP', 'B')

      # Windows XP or later
      begin
         API.new('CheckRemoteDebuggerPresent', 'LP', 'B')
         API.new('DebugActiveProcessStop', 'L', 'B')
         API.new('DebugBreakProcess', 'L', 'B')
         API.new('DebugSetProcessKillOnExit', 'I', 'B')
      rescue Exception
         # Do nothing - not supported on current platform.  It's up to you to
         # check for the existence of the constant in your code.
      end
   end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
windows-pr-0.7.3 lib/windows/debug.rb
windows-pr-0.8.7 lib/windows/debug.rb
windows-pr-0.8.2 lib/windows/debug.rb
windows-pr-0.8.6 lib/windows/debug.rb
windows-pr-0.7.2 lib/windows/debug.rb
windows-pr-0.7.4 lib/windows/debug.rb
windows-pr-0.8.0 lib/windows/debug.rb
windows-pr-0.8.1 lib/windows/debug.rb
windows-pr-0.8.3 lib/windows/debug.rb
windows-pr-0.7.1 lib/windows/debug.rb
windows-pr-0.8.4 lib/windows/debug.rb
windows-pr-0.8.5 lib/windows/debug.rb