File.IsInUse

boolean File.IsInUse ( string Filename )
Примеры

Описание

Возвращает истину (true), если файл используется в указанном месте, или ложь (false), если это не так. Если файл используется он не может быть удален или произведено копирование поверх него.

Параметры

Filename

(строка) Путь к файлу.

Возврат

ResultVariable

(логический) Истина (true), если файл используется, или ложь (false), если это не так, или произошла ошибка. Можно использовать Application.GetLastError для определения случился ли отказ в работе этого действия и почему.

При добавлении действия из редактора скрипта, можно использовать это поле для определения переменной, которая возвращает значение, сохраняющееся в ней.
Смотрите также: Связанные действия

Примеры

Пример 1

are_ya_busy = File.IsInUse(_WindowsFolder .. "\\targetfile.exe");
Сохраняем истину (true) в переменной по имени "are_ya_busy", если файл "targetfile.exe" используется в директории Windows пользователя.

Примечание: _WindowsFolder это встроенная переменная, которая содержит путь к папке пользователя Windows.

Пример 2

-- Checks to see if a particular file exists.
-- Проверяем, существует ли конкретный файл.
are_ya_there = File.DoesExist(_WindowsFolder .. "\\targetfile.exe");

-- If the file exists, check to see if the file is in use.
-- Если файл существует, проверяем используется ли он.
if (are_ya_there) then
    are_ya_busy = File.IsInUse(_WindowsFolder .. "\\targetfile.exe");

    -- If the file isn't in use, overwrite the file.
    -- Если файл не используется, переписываем его.
    if (are_ya_busy == false) then
        File.Copy(_TempFolder .. "\\targetfile.exe", _WindowsFolder .. "\\targetfile.exe", false, true, false, true, nil);

    -- If the file is in use, notify the user.
    -- Если файл используется, уведомляем пользователя.
    else
        result = Dialog.Message("Notice", "The specified file could not be overwritten.", MB_OK, MB_ICONINFORMATION, MB_DEFBUTTON1);
    end
end
В этом примере вначале проверяется существование файла по имени "targetfile.exe". Если он существует, проверяем используется ли файл, при помощи действия File.IsInUse. Если он не используется, копируем поверх него другой файл с таким же именем. Если он используется, показываем диалоговое окно сообщения, уведомляя пользователя.
Смотрите также: Связанные действия