[InnoSetup] zmiana DefaultDirName

0

CZy wie ktoś jak zmienić w sekcji
[CODE]

DefaultDirName na jakieś inne. Dowolny string np stworzony na podstawie części klucza.

0

Helpa oczywiście nikt nie czyta bo po co ...
How To Use -> Pascal Scripting -> Scripted Constants

Example:
DefaultDirName={code:MyConst}\My Program

Here is an example of a [Code] section containing the MyConst function used above.

[Code]
function MyConst(Param: String): String;
begin
Result := ExpandConstant('{pf}');
end;

0

Ok ale to nie daje mi możliwości zmiany {app} w trakcie działania aplikacji stworzonej za pomoca InnoSetup'a [???]
Chodzi mi o to aby dostać efekt jaki masz przy zmianie edita w okienku 'wybierz docelową lokalizaję'
tylko że musze to zrobić skryptem.

0
chesti napisał(a)

Ok ale to nie daje mi możliwości zmiany {app} w trakcie działania aplikacji stworzonej za pomoca InnoSetup'a [???]
ale tego nie napisałes wcześniej

Chodzi mi o to aby dostać efekt jaki masz przy zmianie edita w okienku 'wybierz docelową lokalizaję' tylko że musze to zrobić skryptem.
nie wiem ale pewnie jak poszukasz to znajdziesz

0

Ok znalazłem i piszę tak dla innnych

w sekcji
[Setup] ustawiam wartość domyślną
DefaultDirName=c:\program

natomiast w sekcji
[Files]
Source: xxx; DestDir: {code:MyDir}\xxx; Components: yyy

Po prostu DestDir nie ustawiam na {app}

W sekcji
[Code]

mam mały skrypt

function MyDir(Param: String): String;
var
   zamiana : String;
begin
 if install_type=xxx then
 begin
  //tu robie zmianę ścieżki
  Result := zamiana;
 end
 else Result := ExpandConstant('{app}');//jeśli nie chcę zmienić to zwracam to co wpisał użytkownik
end;

1 użytkowników online, w tym zalogowanych: 0, gości: 1