/ Forside / Teknologi / Udvikling / Perl / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Perl
#NavnPoint
bjarneA 141
poul_from 50
soccer 30
Nicknack 14
Tmpj 0
Hvordan finder jeg fileversion
Fra : Jens Brejner


Dato : 13-01-03 12:54

Hvordan kan jeg finde en windows platform's binær fil's versions nummer fra
et perl script ?

På forhånd tak

Jens




 
 
wulff (13-01-2003)
Kommentar
Fra : wulff


Dato : 13-01-03 14:47

On Mon, 13 Jan 2003 12:54:04 +0100, "Jens Brejner" <einar@fedt.dk>
wrote:
>Hvordan kan jeg finde en windows platform's binær fil's versions nummer fra
>et perl script ?

Det kan du gøre med Win32::File::Ver.

Det kan i teorien hentes fra http://base.dux.ru/guest/fno/perl/, men
den var ikke oppe sidste jeg så efter -- og modulet er ikke på CPAN.
Til gengæld kan du hente den via archive.org.

Du skal desuden installere Win32::API og Byron Brummer's enum.pm (som
findes her: http://search.cpan.org/author/ZENIN/)

Derefter kan du f.eks. gøre:

---kilde---
#!/usr/bin/perl -w

use strict;
use Win32::File::Ver qw(ver print_ansi convert_raw_ver);

my $file = 'd:\Ad-aware.exe';
my $version = ver($file);

my $fileversion = convert_raw_ver( $version->{RawVersionInfo}[0],
$version->{RawVersionInfo}[1] );
my $prodversion = convert_raw_ver( $version->{RawVersionInfo}[2],
$version->{RawVersionInfo}[3] );

print "Fileversion : $fileversion\nProductversion:
$prodversion\n\n";
print_ansi($file);
---kilde---

som giver følgende output:

---output---
Fileversion : 5.00.8.5
Productversion: 5.00.8.5

CompanyName = LavaSoft
FileDescription = Ad-aware
FileOS = WINDOWS32
FileSubtype = UNKNOWN
FileType = APP
FileVersion = 5.0.8.5
InternalName = ad-aware.exe
LegalCopyright = © 2002 Lavasoft
OriginalFilename = ad-aware.exe
ProductName = Ad-aware, multi spyware removal utility
ProductVersion = 5.8
---output---

hth,

wulff

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408925
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste