On Sun, 02 Mar 2008, Foo JH wrote: 
> GetFileVersion() returns the file version, which is not the 
> ProductVersion that I think everybody uses (including Jenda). 
> 
> If I am to look at the Version tab on the exe I generated, I see 
> Product Version listed under 'Other version information'. How can we 
> read this info? 

You could try the Win32::File::VersionInfo module: 

  http://search.cpan.org/~alexeyt/Win32-File-VersionInfo-0.03/VersionInfo.pm 
<https://uspl.webmail.eds.com/exchweb/bin/redir.asp?URL=http://search.cpan.org/~alexeyt/Win32-File-VersionInfo-0.03/VersionInfo.pm>
  

Or you could do what most everybody else does and set FileVersion and 
ProductVersion to the same number. 

Cheers, 
-Jan 

 
--
Paul J. Brzezinski
Global Client Engineering - GM
248-365-9615

________________________________

From: [EMAIL PROTECTED] on behalf of Stuart Arnold
Sent: Fri 4/25/2008 9:58 AM
To: 'Cruickshanks, Darin'; [email protected]
Subject: RE: Accessing executable summary/detail information


You can get it thru the DLL "Version.dll"
MS Help is on "VersionInfo"
 
Here are some of the APIs to the various functions.
 
sub VERSION_LIB() { "version.dll" }
our $GetFileVersionInfoSize = new Win32::API( VERSION_LIB, 
"GetFileVersionInfoSize",
 [ #args...
 "P", # [in] (char*/lpstr) = filename to use
 "P" # [in/out] (ushort*/puint) = VersionHandle = 0
 ], # return...
 "N" # [return] (long/dword) = the sizeof info
 );

our $GetFileVersionInfo = new Win32::API( VERSION_LIB, "GetFileVersionInfo",
 [ # args...
 "P", # [in] (char*/lpstr) = filename to use
 "P", # [in] (ushort*/puint) = VersionHandle from "GetFileVersionInfoSize"
 "N", # [in] (long/dword) = sizeof VersionInfo (next arg)
 "P" # [out] (&void*/&lpstr*) = data to receive (theVersionInfo)
 ], # return...
 "N" # [return] (long/dword) = success(1)/failure(0)
 );

our $VerQueryValue = new Win32::API( VERSION_LIB, "VerQueryValue",
 [ # args...
 "P", # [in] (void*/lpstr*) = theVersionInfo
 "P", # [in] (char*) = key string to search for
 "P", # [out] (&void*) = value returned
 "P" # [out] (ushort*/puint*) = size of value returned in bytes
 ], # return...
 "N" # [return] (long/dword) = success(1)/failure(0)
 );

 
I have a library I wrote for doing all of this, but unfortunatly, I do not 
think my company will let me give that out.
 
Also, be aware of Languages that it supports, eg, chineese.
 
---Stuart Arnold
w: [EMAIL PROTECTED]
w: 678.297.1027
 
 

________________________________

From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Cruickshanks, 
Darin
Sent: Friday, April 25, 2008 9:29 AM
To: [EMAIL PROTECTED]; [email protected]
Subject: RE: Accessing executable summary/detail information



Yup, that's what I'm after.

 

Darin
--------------------------------------------
Darin Cruickshanks
Lab Support Manager, Computing Service
University of Essex
01206 873585 

 

From: Stuart Arnold [mailto:[EMAIL PROTECTED] 
Sent: 25 April 2008 13:34
To: Cruickshanks, Darin; [email protected]
Subject: RE: Accessing executable summary/detail information

 

Do you mean the Version Info and such that is in there? That is, Company name, 
trademarks, versions, etc, we see when you click on the EXE and get the 
Properties window?

 

---Stuart Arnold

w: [EMAIL PROTECTED]

w: 678.297.1027

 

 

 

________________________________

From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Cruickshanks, 
Darin
Sent: Friday, April 25, 2008 7:13 AM
To: [email protected]
Subject: Accessing executable summary/detail information

All,

 

I have a requirement for reading the summary (metadata) of an executable; does 
anyone know of a way to do this with Perl?

 

Thanks,

 

Darin
--------------------------------------------
Darin Cruickshanks
Lab Support Manager, Computing Service
University of Essex
01206 873585 

 

_______________________________________________
Perl-Win32-Admin mailing list
[email protected]
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs

Reply via email to