File.Install
Описание
Устанавливает файл на систему пользователя.
Примечание: Это тоже самое копирование файла, но с несколько большими возможностями.
ПараметрыFilename
(строка) Путь к файлу, который нужно установить.
Destination
(строка) Полный путь и имя файла назначения, куда требуется установка.
Overwrite
(число) Переписывать ли файл в папке назначения, если там уже имеется файл с точно таким же именем, как и устанавливаемый:
Предупреждение: В большинстве случаев не очень хорошая мысль выбрать FILE_INSTALL_ALWAYS, если только есть уверенность что это то, что нужно делать. Также не выбирайте FILE_INSTALL_ASK если нет уверенности, что пользователь будет иметь достаточно знаний для принятия такого решения. FILE_INSTALL_SAMEOLDER это обычно самый безопасный выбор.
CreateBackup
(логический) Создавать ли резервную копию существующего файла (если он имеется) в процессе установки:
SharedSystem
(логический) Указывать ли является файл системным файлом, который может быть в общем пользовании несколькими программами:
ProgressCallbackFunction
(функция) Имя функции, которая будет вызываться всякий раз когда происходит процесс установки.
(Эту возвращающуюся функцию можно использовать для отображения хода выполнения операции установки, своим собственным способом.)
Примечание: Если в ProgressCallbackFunction установлено значение nil, тогда информация о протекании процесса будет отправлена во встроенное диалоговое окно состояния, предполагая что оно в настоящий момент видимое. (Можно показать или скрыть диалоговое окно состояния действиями StatusDlg.Show или StatusDlg.Hide соответственно.) Возвращающаяся функция должна иметь возможность принять следующие параметры: Source(строка) Путь к источнику устанавливаемого файла.Destination(строка) Путь назначения для устанавливаемого файла.Copied(число) Количество байтов, установленных на настоящий момент.Total(число) Общее количество байтов, которое будет устанавливаться. Возвращающая функция должна возвращать логическое значение (истина (true) или ложь (false)), показывающее следует ли продолжать операцию установки:
OverwriteCallbackFunction
(функция) Имя функции, которая будет вызываться всякий раз, когда должно быть сделано решение о перезаписи. (Можно использовать эту возвращающуюся функцию для управления операцией перезаписи особым способом.)
Примечание: Если в OverwriteCallbackFunction установлено значение nil, тогда будет выполняться опция перезаписи FILE_INSTALL_SAMEOLDER. Возвращающаяся функция должна иметь возможность принять следующие параметры: Source(строка) Путь к источнику устанавливаемого файла.Destination(строка) Путь назначения для устанавливаемого файла. Возвращающая функция должна возвращать логическое значение (истина (true) или ложь (false)), показывающее следует или нет переписывать файл:
ВозвратResultVariable
(логический) Истина (true), если файл был установлен или ложь (false), если этого не произошло или случилась ошибка. Можно использовать Application.GetLastError для определения случился ли отказ в работе этого действия и почему.
Смотрите также: Связанные действия
ПримерыПример 1-- Install the file cooltoy.dll. -- Устанавливаем файл cooltoy.dll. success = File.Install("AutoPlay\\Docs\\cooltoy.dll", _SystemFolder .. "\\cooltoy.dll", FILE_INSTALL_ALWAYS, false, false, nil, nil); -- Check to see if the install action was successful by getting an error code. -- Проверяем, было ли действие установки успешным, получением кода ошибки. error = Application.GetLastError(); -- If the install was not successful, display its error message. -- Если установка не была успешной, показываем сообщение об ошибке. if success == false then Dialog.Message("Error", _tblErrorMessages[error], MB_OK, MB_ICONEXCLAMATION); endУстанавливаем файл "AutoPlay\Docs\cooltoy.dll" в папку пользователя System, переписываем любой существующий файл cooltoy.dll, который там может быть. Сохраняем истину или ложь в переменной по имени "success" соответственно тому была или нет успешна установка файла. Если случилась неудача, в диалоговом окне показываем сообщение об ошибке.
Смотрите также: Связанные действия
|