Einzelnen Beitrag anzeigen

Benutzerbild von MagicAndre1981
MagicAndre1981

Registriert seit: 4. Jun 2004
Ort: Nordhausen
2.214 Beiträge
 
Delphi 7 Enterprise
 
#1

Productversion auslesen liefert unter Vista falschen Wert

  Alt 10. Mai 2007, 17:52
Für meine Windowserkennungsroutine brauche ich die Produktversion einer Datei, da diese nur beim Kernel erhöht wird, aber nicht bei anderen aktualisierten Windowsdateien. Nun der Explorer kann das wunderbar anzeigen:

http://img443.imageshack.us/img443/6...xplorerjh1.png

, aber bei mir klappt das nicht. Ich bekomme immer 6.0.6000.20532, also die Dateiversion und nicht die Produktversion.

Delphi-Quellcode:
function GetVersionsInfo(const AFilename :String; var V1,V2,V3,V4:Word):Boolean;
var
  VerInfoSize : Integer;
  VerValueSize : DWord;
  Dummy : DWord;
  VerValue : PVSFixedFileInfo;
  VerInfo : Pointer;
  FName : PChar;
begin
  FName := StrAlloc(Max_Path);
  try
    StrPCopy(FName, AFileName);
    VerInfoSize:=GetFileVersionInfoSize(FName, Dummy);
    Result := False;
    if VerInfoSize > 0 then
    begin
      GetMem(VerInfo,VerInfoSize);
      try
        if GetFileVersionInfo(FName,0,VerInfoSize,VerInfo) then
        begin
          if VerQueryValue(VerInfo,'\',Pointer(VerValue),VerValueSize) then
           with VerValue^ do
           begin
             V1 := dwProductVersionMS shr 16;
             V2 := dwProductVersionMS and $FFFF;
             V3 := dwProductVersionLS shr 16;
             V4 := dwProductVersionLS and $FFFF;
           end;
           Result:=True;
        end;
      finally
        FreeMem(VerInfo,VerInfoSize);
      end;
    end;
  finally
    StrDispose(FName);
  end;
end;
Also hab ich mal den XN Resource Editor geschnappt und siehe da, da wird auch 6.0.6000.20532 als Produktversion angezeigt http://img406.imageshack.us/img406/8...versionxy4.png

Wie schafft der Explorer das?
André
"A programmer is just a tool which converts caffeine into code", daran wirds wohl liegen, dass ich Abends nie pennen kann

Zitat von Luckie:
Nicht nur dass ihr offtopic geworden seid, jetzt werdet ihr selber im Offtopic noch offtopic
  Mit Zitat antworten Zitat