![]() |
|
Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply |
![]()
|
|
| AHTOLLlKA |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 19 Регистрация: 18.10.2007 Репутация: нет Всего: нет |
всем привет, суть такая:
моя программа использует временный файл c:\temp\12312.tmp и какойто сторонний процес пытается его открыть, изменить, удалить. как определить что за процес это делает ?? |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 16 Всего: 459 |
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| SneG0K |
|
|||
|
Max Mara ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1887 Регистрация: 1.12.2007 Где: Wis Dells Репутация: нет Всего: 54 |
||||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 16 Всего: 459 |
В данной конкретной ситуации можно посмотреть программой Unlocker. Запретить чтобы другие не лазили можно выставив флаг fmOpenShareExclusive при открытии или создании файла (CreateFile, TFileStream, OpenFile). И еще момент, если нужно сгенерировать уникальное имя для временного файла, то лучше воспользоваться функцией GetTempFileName
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| AHTOLLlKA |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 19 Регистрация: 18.10.2007 Репутация: нет Всего: нет |
нет, антивируса нету, ни фаеров ни каких других сторонних "предметов" которые могут помешать файл создан мной, и заблокирован
и я его открываю блокнотом, вот ерально ли отследить в моей программе что файл, который я держу, пытаеться открыть блокнто ? |
||||
|
|||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 16 Всего: 459 |
чтобы запретить нужно сделать
Определить реально, в худшем случае можно поставить хук на апи функцию, но думаю что ID процесса получить можно (забыл название функции), затем перечисляя процессы выяснить кому принадлежит. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| AHTOLLlKA |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 19 Регистрация: 18.10.2007 Репутация: нет Всего: нет |
хук к сожалению не вариант ибо метод через чур.... вот в идеале получить pid процесса.... |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 16 Всего: 459 |
Гм.. чуток погуглил есть функция FsRtlAreThereCurrentFileLocks, FsRtlGetNextFileLock, но все это пашет только в kernel mode. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| AHTOLLlKA |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 19 Регистрация: 18.10.2007 Репутация: нет Всего: нет |
хм.. почемуто мне кажется что это нето, он определит заблокирован файл или нет вроде как.. вот нашел ReadDirectoryChangesW в принцыпе подойдет для слежения за файлом... но по нему не узнать кто изменяет файл... |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 16 Всего: 459 |
Можно узнать зачем это вообще надо? Может есть более простое решение? На счет программ я почитал про 3 аналога, все имеют драйвер в режиме ядра, у одной дополнительно еще хук. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| AHTOLLlKA |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 19 Регистрация: 18.10.2007 Репутация: нет Всего: нет |
я хотел написать мини тулзу которая будет следить за важными файлами, и при попытке кого либо изменить или удалить их... оповещал бы...
|
|||
|
||||
![]()
|
| Правила форума "Delphi: WinAPI и системное программирование" | |
|
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |