in reply to Win32::API on 64 bits Windows Perl?

There's some partial Win64 support in the github version:
git clone git://github.com/cosimo/perl5-win32-api.git win32-api
I actually have an API_test64.dll (different to the one on github) that allows t/API.t to pass its tests - but I think the partial support is for MS compilers only. Nothing there for x64 Strawberry Perl, afaik.

Here's the best I can do with that github version:
t/00_API.t .......... ok t/01_Struct.t ....... 1/7 # $^E= t/01_Struct.t ....... Dubious, test returned 5 (wstat 280, 0x500) Failed 2/7 subtests t/02_GetProcess.t ... 1/3 # $result=3980 # $$=3980 t/02_GetProcess.t ... ok t/03_undef.t ........ # Win32::API 0.60_64 t/03_undef.t ........ 1/3 # Import: The handle is invalid # PeekNamedPipe: The handle is invalid # Failed test '(RT \#39730) sample API (PeekNamedPipe) works with un +def values ' # at t/03_undef.t line 60. # Looks like you failed 1 test of 3. t/03_undef.t ........ Dubious, test returned 1 (wstat 256, 0x100) Failed 1/3 subtests t/04_rt_48006.t ..... 1/3 # Size is 296. Should be 296 t/04_rt_48006.t ..... ok t/05_more_struct.t .. ok
It may be possible to do better with some simple hacking, but I don't pay much attention to Win32::API any more.
Imo, if you want to access the Win64 API, best to do it with XS (or Inline::C) - and that goes for both ActivePerl and Strawberry Perl.

Cheers,
Rob

Replies are listed 'Best First'.
Re^2: Win32::API on 64 bits Windows Perl?
by Anonymous Monk on Jan 18, 2011 at 06:45 UTC

    The latest version from github supports also x64 Strawberry Perl - at least to the same extent as Active Perl.

    However:

    • Callbacks are not supported by neither Active|Strawberry Perl
    • AFAIK there are some minor issue with struct alignment on x64 (again on both Active|Strawberry Perl)

    --
    kmx