Einzelnen Beitrag anzeigen

bcvs

Registriert seit: 16. Jun 2011
668 Beiträge
 
Delphi 12 Athens
 
#29

AW: Inno Setup Datei Existenz überprüfen vor der Installation?

  Alt 26. Mai 2017, 11:06
2) wenn der String nicht in der Registry steht, dann expandierst du DefaultPath wobei DefaultPath = {code:GetRegistryPath} ist
Nein. DefaultPath ist hier leer. Da hätte man explizit einen Parameter übergeben müssen mit
[Setup]
DefaultDirName={code:GetRegistryPath|Parameter}

GetRegistryPath gibt also einen Leerstring zurück, worauf Innosetup wahrscheinlich das DefaultDirMane auf {app} setzen will, war wiederum zu diesem Zeitpunkt noch nicht bekannt ist.

Also mach entweder meine Lösung aus #23 oder so was:

[Files]
Source: "C:\Quelldatei"; DestDir: {code:GetRegistryPath};

[Code]
function GetRegistryPath(DefaultPath: string): string;
begin
if not RegQueryStringValue(...., result) then
Result := ExpandConstant('{app}'); // jetzt ist es ja bekannt
end;

Wobei man für die Ermittlung des Pfades aus der Registry noch eine funktionierende Lösung finden müsste, wie SneakyBagels schon gesagt hat.
  Mit Zitat antworten Zitat