Sat Jul 09 08:46:33 2022: Request 143646 was acted upon. Transaction: Correspondence added by RSCHUPP Queue: PAR-Packer Subject: Problem using Win32::TieRegistry in script packed with pp on Windows [rt.cpan.org #143646] Broken in: (no value) Severity: (no value) Owner: Nobody Requestors: torsten.wer...@assyst.de Status: open Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=143646 >
On 2022-07-07 11:56:33, torsten.wer...@assyst.de wrote: > $_NoMoreItems is used to check the result of an API call. It has a > different/wrong value when Win32::WinError is unavailable. That propbably explains why it worked for me (English vs German messages?), though my exe/zip didn't contain Win32::WinError either. > if ( eval { require Win32::WinError } ) { This runtime check and fallback code is likely obsolete as Win32::TieRegistry states in its META.yml requires: Carp: 0 Tie::Hash: 0 Win32::WinError: 0 Win32API::Registry: 0.33 perl: 5.006 Anyway, the interesting question for me is: why didn't PAR::Packer take the above line as a clue to pack Win32::WinError into the executable. I'll fix this in Module::ScanDeps (which PAR::Packer uses to analyze the dependencies of your script). Thanks for following up. Cheers, Roderich