#!usr/bin/perl use Win32::API; my $filename="C:\\Program Files\\America Online 9.0g\\aol.exe"; my $apiobject = new Win32::API("C:\\Documents and Settings\\Mdaviesie\\Desktop\\dver_1.3\\fileversion.dll", "GetFileVersionTxt", 'PP','I') or die "Failed to acquire API: $^E"; #Set some memory aside for the returned value my $string="\x00" x 1024; #Call the function in the dll $apiobject->Call($filename,$string)| die "died at line 16"; #Remove the unused padding in the string my ($final) = $string =~/(.*?)\x00/; print "\$final - $final";