![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 13.03.2010
Сообщений: 24
|
![]()
Не могу решить задачу:
Открываю из моей программы некий текстовый файл. Как мне сделать, чтобы я мог определить другой моей программой, что этот текстовый файл уже открыт? |
![]() |
![]() |
![]() |
#2 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
![]()
1) а зачем Вам нужно это определять?!
А если у Вас просто прав на открытие файла нет? 2) по простому, например, можно использовать Try ... Except ... - и на excption - действия при невозможности открытия файла p.s. надеюсь, Вы знаете, что файл можно открывать в режимах mShareExclusive, fmShareDenyWrite, fmShareDenyRead, fmShareDenyNone ?! |
![]() |
![]() |
![]() |
#3 | |
Пользователь
Регистрация: 13.03.2010
Сообщений: 24
|
![]() Цитата:
А задача такая: 1) Открываю файл из первой программы. 2) Нужно, чтобы я не мог открыть этот же файл из другой программы. Проверить: уже открыть данный файл или нет? |
|
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
![]()
тогда вам надо открыть файл экслюзивном режиме(fmShareDenyExclusive) в первой программе.
и во второй программе при TFileStream.Create вылетит исключение. инфа по этому легко гуглится. Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
![]() |
![]() |
![]() |
#5 |
Пользователь
Регистрация: 13.03.2010
Сообщений: 24
|
![]() |
![]() |
![]() |
![]() |
#6 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,434
|
![]()
А вообще проверяйте права файла....
Если там нет записи, значит файл можно читать. А если можно писать, поопробуйте открыть его и записать ''. Если пишет, значит можно. Если нет, то нельзя. |
![]() |
![]() |
![]() |
#7 |
Форумчанин
Регистрация: 16.12.2009
Сообщений: 902
|
![]()
Попробуй эту функцию:
Код:
Код:
Последний раз редактировалось Aliens_wolfs; 05.07.2011 в 22:09. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Можно ли программно определить, что мышь двигает не человек, а бот? | amakl | Софт | 4 | 11.01.2011 02:18 |
Как программно определить IP | Дамир | Общие вопросы .NET | 2 | 10.10.2010 19:20 |
Как определить закрыт или открыт текстовый файл | ZvEr_HaCkEr | Общие вопросы Delphi | 3 | 28.07.2010 17:33 |
Как узнать, открыт ли файл? | #32 | Microsoft Office Excel | 5 | 30.10.2009 12:04 |
Запрет запуска программы на VBA в случае если Excel уже открыт | kovalevskivf | Microsoft Office Excel | 4 | 01.09.2009 11:22 |