Wed Aug 19 20:48:47 2009: Request 48858 was acted upon.
Transaction: Ticket created by g...@vandyke.com
       Queue: Win32-OLE
     Subject: Bug in OLE.xs _Typelibs() function for Win64?
   Broken in: (no value)
    Severity: (no value)
       Owner: Nobody
  Requestors: g...@vandyke.com
      Status: new
 Ticket <URL: http://rt.cpan.org/Ticket/Display.html?id=48858 >


Hi,

The _Typelibs() function is always accessing the
"Win32" key when looking up the file path.  This
can cause problems for the Const module (at least)
if the the component doesn't actually have a 32-bit
version correctly installed (I'm writing a component
that doesn't install a 32-bit version.)

I think there are several possibilities, for a solution:

1. We could call "Win32::OLE::Const::_Typelib" for the
    "Win64" key if it exists and for the "Win32" key.

    This probably works the best, I think, as _Typelib
    everything will still work if one of the keys is
    pointing to a file that no longer exists or is
    otherwise mis-configured.

2. We could call prefer the "Win64" key, if present, for
    x64 builds.

3. _Typelibs() could either parse the keyname, or otherwise
    be told, so that it knows it is looking at the win64
    data as opposed to the Wow6432 node, and use the "Win64"
    key when looking an the win64 data.

Do any of these sound like a sane solution?

Does my analysis of the situation seem sound?

Thanks,

Joseph

Reply via email to