[Win32utils-devel] Pure Ruby win32-ole library

Heesob Park phasis at gmail.com
Sat May 16 11:55:10 EDT 2009


2009/5/16 Daniel Berger <djberg96 at gmail.com>:
> On Fri, May 15, 2009 at 6:22 PM, Park Heesob <phasis at gmail.com> wrote:
>> Hi,
> <snip>
>>> Also, most of the functions you need are in the
>>> Windows::COM::Automation module. A few are missing, so I've added
>>> those, along with the constant enum values.
>>> I did notice a prototype difference for SysAllocString. I return the
>>> string, but you want the address?
>> Yes. The SysAllocXXX should return the address.
>> BTW, you mistacked RegEnumKeyEx's prototype in registry.rb
>> 'LLPPPPP' should be 'LLPPPPPP'
>> Also LoadTypeLibEx's prototype 'PPP' should be 'PLP'.
> I've corrected the mistakes you mentioned, thank you. I've released
> windows-pr 1.0.4 that should have everything you need now. Please let
> me know if there's anything I've missed.
>>> I'll take a look at the IConnectionPoint::Advise code soon.
>>  I guess it is related with the callback function implementation. When I
>> tested with the native C function, it works.
> Perhaps we could borrow some ideas from that other code that used asm?
> Do you have an easy test case?
Finally I have finished the first release of pure Ruby version of
win32-ole including event handling. Of course, there are still some
untested bugs.

I have done the code refactoring of the callback function of the
win32-api module inevitably to support user defined event handler.
Although the api.c code looks uncomfortable, it's my best choice for
now. For me, using inline assembly seems dependent on compiler or cpu
and unstable.

The code is available at


Park Heesob

More information about the win32utils-devel mailing list