Форум: "Система";
Текущий архив: 2002.07.22;
Скачать: [xml.tar.bz2];
ВнизФайлы Найти похожие ветки
← →
BJValentine (2002-04-25 16:41) [0]Как узнать программным способом, открыт файл или нет?
← →
Suntechnic (2002-04-25 22:49) [1]Попробуй его удалить. Если не получилось, значит открыт, а если получилось, значит.... не был :)
← →
Almaz (2002-04-26 01:38) [2]Попробуй открыть его монопольно - если получится, то значит его еще никто не открыл.
Удачи.
← →
BJValentine (2002-04-26 09:56) [3]По поводу удалить, интересная мысль, ну а если получится удалить, как я его опять восстанавливать буду? Думаю этот вариант не подходит, а монопольно пробовал открывать, никакой ошибки не выдаёт (пробовал с помощью CreateFile). Может быть я что-то неправильно сделал?
← →
Anatoly Podgoretsky (2002-04-26 12:50) [4]Если ты открыл файл в монопольном режие, то это означает, что его никто не использует!
← →
jonik pegas (2002-04-26 14:27) [5]Не надо удалять просто перенеси куда нибудь а потом обратно
← →
Suntechnic (2002-04-26 20:09) [6]Мужики да вы чего? :) Я же пошутил :)))
← →
Doom (2002-04-26 21:14) [7]Кстати я когда прочитал что ты вчера написал чуть со стула со меху не упал, честно.
← →
Anatoly Podgoretsky (2002-04-26 21:31) [8]Даже смайлики не помогают, настолько серьезно отнеслись к методу :-)
← →
Suntechnic (2002-04-26 22:00) [9]>Anatoly Podgoretsky © (26.04.02 21:31)
Я теперь уж и шутить боюсь :)... а то прям не шутки, а руководство к действию получается :)
← →
BJValentine (2002-04-28 13:07) [10]Значит так, открыл я файл Блокнотом, а потом открыл его монопольно в Delphi функцией CreateFile. Открылся этот файл нормально без всяких ошибок. Что делать, ума не приложу!
← →
panov (2002-04-29 06:36) [11]>BJValentine © (28.04.02 13:07)
Значит так, открыл я файл Блокнотом
NotePad его открыл, закрузил и закрыл. Вот файл и свободен.
Так многие программы работают. Так что 100%-ое определение "занятости" файла у тебя не получится...
← →
Anatoly Podgoretsky (2002-04-29 08:04) [12]Он и не занят, если строго по вопросу - не открыт
← →
n\a (2002-05-01 22:02) [13]флэйм развили из-за нечего ... =)
function isFileUse(const Name : string) : boolean;
var
HFileRes : HFILE;
begin
Result := false;
if not FileExists(Name) then exit;
HFileRes := CreateFile(pchar(Name), GENERIC_READ or GENERIC_WRITE,0, nil,
OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL, 0);
Result := (HFileRes = INVALID_HANDLE_VALUE);
if not Result then CloseHandle(HFileRes);
end;
← →
Aleks1 (2002-05-02 03:16) [14]> n\a
Очень большое самомнение без должных доказательств.
Ну как сможет сработать функция "isFileUse" (кстати имя и не по русски, и не по англицки) в варианте:
panov © (29.04.02 06:36)
???
← →
Anatoly Podgoretsky (2002-05-02 09:01) [15]Очень прекрасно будет срабатывать, в варианте panov © (29.04.02 06:36) файл закрыт и функция сработает нормально.
Функция полностью соответствует вопросу. Не забыто практически ничего, ни отсутсвие файла, ни закрытие если файл удалось открыть. Не понятно какие могут быть претензии.
Страницы: 1 вся ветка
Форум: "Система";
Текущий архив: 2002.07.22;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.004 c