Mercurial > pub > dyncall > bindings
diff ruby/rbdc/examples/win32msgbox.rb @ 0:0cfcc391201f
initial from svn dyncall-1745
author | Daniel Adler |
---|---|
date | Thu, 19 Mar 2015 22:26:28 +0100 |
parents | |
children | 5e159be89d73 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/ruby/rbdc/examples/win32msgbox.rb Thu Mar 19 22:26:28 2015 +0100 @@ -0,0 +1,22 @@ +#////////////////////////////////////////////////////////////////////// +# +# win32msgbox.rb +# Copyright 2007-2014 Tassilo Philipp +# +# Dyncall sample loading user32.dll on windows, listing all user32 +# symbols and displaying a # native windows message box by calling +# MessageBoxA(...). +# +#/////////////////////////////////////////////////////////////////////// + +require 'rbdc' + +l = Dyncall::ExtLib.new +if l.load('user32') != nil and l.syms_init('user32') + l.syms_each { |s| puts s } + puts l.syms_count + puts l.exists?(:NonExistant) + puts l.exists?(:MessageBoxA) + puts l.call(:MessageBoxA, 'IZZI)i', 0, 'Hello world from dyncall!', 'dyncall demo', 0) + # @@@ check puts on dyncall called function returning a void... crashes e.g. change above signature to IZZI)v +end