#!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'); #Set some memory aside for the returned value my $String="\x00" x 1024; #Call the function in the dll $ApiObject->Call($filename,$output); #Remove the unused padding in the string my $final = ($String =~/(.*?)\x00/); print "\$final - $final"; #### Program Error Perl.exe has generated errors and will be closed by Windows. You will need to restart the program. An error log is being created.