in reply to Re: Win32::API giving a program error
in thread Win32::API giving a program error
A bit of background, all the dll is supposed to return is the version number of the named file. The function I want to call looks like this:#!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/De +sktop/dver_1.3/fileversion.dll", "GetFileVersionTxt", 'PP','I') or di +e "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); #Remove the unused padding in the string my $final = ($string =~/(.*?)\x00/); print "\$final - $final";
The dll returns a version number (I was using the fileversion modules before, but their output is slightly different to what this dll returns - which is why I have to try to work with it). If anybody could provide me with a pointer as to why this is returning the error message,INT GetFileVersionTxt(STRING sFile, out STRING sVersion)
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^3: Win32::API giving a program error
by Anonymous Monk on Jun 03, 2004 at 14:35 UTC |