procedure ExtractTemporaryFile(const FileName: String);
Извлекает указанный файл FileName из секции [Files] во временный каталог. Для определения расположения временного каталога используйте ExpandConstant('{tmp}').
При закрытии программы установки все извлечённые файлы автоматически удаляются.
Если файл не извлечён, не найден или найден, но не был обработан из-за наличия параметров MinVersion и/или OnlyBelowVersion, будет вызвано исключение.
Используйте Flags: dontcopy в секции [Files], чтобы указать программе установки пропустить данный файл на этапе копирования файлов.
Используйте Flags: noencryption в секции [Files], если включено шифрование и вызов функции ExtractTemporaryFile выполняется прежде, чем пользователь введёт правильный пароль.
Если включено непрерывное (solid) сжатие, обязательно перечислите все временные файлы в самом начале секции [Files]. Причиной этого является то, что для получения доступа к произвольному файлу в архиве с непрерывным сжатием, программа установки должна сначала распаковать все предыдущие файлы (во временный буфер в памяти). Это может привести к значительной задержке в работе инсталлятора, если в секции [Files] перед временно используемыми файлами находится множество других файлов.
[Files] Source: "Readme.txt"; Flags: dontcopy noencryption [Code] function InitializeSetup: Boolean; var S: AnsiString; begin // Показываем содержимое Readme.txt (не Unicode) в сообщении ExtractTemporaryFile('Readme.txt'); if LoadStringFromFile(ExpandConstant('{tmp}\Readme.txt'), S) then begin MsgBox(S, mbInformation, MB_OK); end; Result := True; end;