Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Для новичков > Pascal Scripting: Scripted Constants (InnoSetup)


Автор: semiono 27.1.2010, 03:38
Pascal Scripting: Scripted Constants

Example:

DefaultDirName={code:MyConst}\My Program

Код

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


Это что единственный путь получить {code:MyConst} в других секциях интсаллера?
Почему нельзя прямо константу указать?...

Мне нужно следущее...
Код
[код]
procedure DeinitializeSetup();
var
  S: TArrayOfString;
  F: String;
begin
  F := ExpandConstant('{sd}\newz.inf');
  SetArrayLength(S, 8);
  S[0] := ExpandConstant('[Version]');
  S[1] := ExpandConstant('Signature=$Windows NT$');
  S[2] := ExpandConstant('');
  S[3] := ExpandConstant('[DefaultInstall]');
  S[4] := ExpandConstant('AddReg=Add.Reg');
  S[5] := ExpandConstant('');
  S[6] := ExpandConstant('[Add.Reg]');
  S[7] := ExpandConstant('HKLM,"Software\Classes\AVIFile\Extensions\AVI",,0,"{{894288e0-0948-11d2-8109-004845000eb5}"');
  SaveStringsToFile(F, S, False);
end;
[Registry]
Root: HKLM; Subkey: "Software\$reg.exe"; ValueType: string; ValueName: "1"; ValueData: "{code:MyConst}"; Flags: noerror; Permissions: admins-full

Чтоб {code:MyConst} получил это - {894288e0-0948-11d2-8109-004845000eb5}
Чтоб два раза это не писать там и там.
??

Автор: Akella 27.1.2010, 12:10
Цитата(semiono @  27.1.2010,  03:38 Найти цитируемый пост)
Почему нельзя прямо константу указать?...

Ты так спрашиваешь, как будто здесь форум разработчиков InnoSetup

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)