This approach works >>
use Win32::API; sub GetFileVersion { my $fn = shift @_; if (! $ref_GetFileVersionInfoSize) { $ref_GetFileVersionInfoSize = new Win32::API("Version", "GetFileVersionInfoSize", [P, P], I); if ( ! defined $ref_GetFileVersionInfoSize) { warn "Cannot import KERNEL fcn : GetFileVersionInfoSize : $!"; return undef; } } # OK, we've got a handle for GetFileVersionInfoSize; use it! my $z = 0; my $sz = $ref_GetFileVersionInfoSize->Call($fn, $z); if (! $ref_GetFileVersionInfo) { $ref_GetFileVersionInfo = new Win32::API("Version", "GetFileVersionInfo", [P, I, I, P], I); if ( ! defined $ref_GetFileVersionInfo) { warn "Cannot import KERNEL fcn : GetFileVersionInfo : $!"; return undef; } } # Allocate Space For File Version Info my $FileInfo = "\x00" x $sz; my $ignored = 0; my $rc = $ref_GetFileVersionInfo->Call($fn, $ignored, $sz, $FileInfo); $FileInfo =~ s/[^A-Za-z0-9.:]//go; # Get only the File Version Info; this xform is "brute-force", but it works! $FileInfo =~ s/.*FileVersion([\d\.]*).*/$1/go; return($FileInfo); } Yours, Mike Genovese ATI/Marlboro QE xt. 3845 5-881-3900, xt. 3845 -----Original Message----- From: David Mamanakis [mailto:[EMAIL PROTECTED] Sent: Wednesday, September 24, 2003 10:53 AM To: [EMAIL PROTECTED]; Perl-Win32-Users Subject: How do I get DLL file versions I need a snippet of code that will get me the file versions from DLL files in Windows I have done a quick search, no luck... need it asap... Thanks in ADVANCE! --DM _______________________________________________ Perl-Win32-Users mailing list [EMAIL PROTECTED] To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs -- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]