How to make Win32::OLE work on 64bit MS OFFICE installation

前端 未结 2 1275
小蘑菇
小蘑菇 2021-01-02 19:08

I have two PCs, one has MS Office 2013 32bit installed and another MS Office 64bit installed. I have Perl code that is using Win32::OLE Perl module to manipulate XLS spreads

相关标签:
2条回答
  • 2021-01-02 19:36

    I use your Win32::OLE::Const module to have the Excel constants available in Perl.

    Recently, I had a clean Win7 x64 install with Office 2016 and the script was not working anymore (using the latest version Win32::OLE::Const module which is installed with the current (on 06/04/2016) ActiverPerl 64 bit installation).

    After some investigation, I have found out that the Win32::OLE::Const did not see the Excel automation object although it was well registered and available in the registration database.

    In the registration database the following key contains the path to the Excel executable:

    HKEY_LOCAL_MACHINE\SOFTWARE\Classes\TypeLib\{00020813-0000-0000-C000-000000000046}\1.9\0\Win64
    

    If I add manually a new key

    HKEY_LOCAL_MACHINE\SOFTWARE\Classes\TypeLib\{00020813-0000-0000-C000-000000000046}\1.9\0\Win32 
    

    with the same path as for the Win64 key then the Perl script found the Excel typelib and worked again.

    Hope this helps.

    0 讨论(0)
  • 2021-01-02 19:53

    Registry key also helps with Outlook 2013.

    /HKEY_LOCAL_MACHINE\SOFTWARE\Classes\TypeLib\{00062FFF-0000-0000-C000-000000000046}\9.5\0\win32
    
    0 讨论(0)
提交回复
热议问题