Hey himitsu,
wow, nicht schlechte Reaktionszeit für einen aufgewärmten Thread
Allein VerBufValue anders zu deklarieren hat nicht funktionert, da Delphi die Variable an anderer Stelle im Code nichtmehr geschmeckt hat. Habe es jetzt so gelöst:
Delphi-Quellcode:
function GetInfo(const aKey: string): string;
var PCharVerBufValue : PChar; //<--- neue Variable als PChar
begin
Result := '';
VerKey := Format('\StringFileInfo\%.4x%.4x\%s',
[LoWord(Integer(VerBufValue^)), HiWord(Integer(VerBufValue^)), aKey]);
if VerQueryValue(VerBuf, PChar(VerKey), VerBufValue, VerBufLen) then
PCharVerBufValue := VerBufValue; //<---Wert wird aus VerBufValue in PChar "umformatiert"
Result := SysUtils.StrPas(PCharVerBufValue); //<-- Delphi schluckt
end;