· Начало · Отвђтить · Статистика · Поиск · FAQ · Правила · Установки · Язык · Выход · WASM.RU · Noir.Ru ·

 WASM Phorum —› WASM.ZEN —› Прога для заморозки Windows 2000

. 1 . 2 . >>

Посл.отвђт Сообщенiе


Дата: Ноя 25, 2003 02:57:07

Вопрос такой: установлена Windows 2000, на компе есть файл (расширение .tmp) который она использует и не дает ни копировать, ни перемещать, даже читать не дает, а очень нужно получить этот файл.
Проблема усложняется тем что сделать это нужно не выходя из Windows, так как файл этот генерируется прогой запущеной под ее управлением.
Подскажите что делать?
P.s. Может есть прога которая умеет замораживать (временно блокировать), систему ? Или может быть есть какие-нибудь варианты еще ?


Дата: Ноя 25, 2003 03:00:06

А что даст блокирование? То есть завешивание, или я не так понял?.. Reset не спасает?


Дата: Ноя 25, 2003 03:08:38

Блокирование для того что бы Windows перестала обращаться к файлу и в это время перекопировать файл.


Дата: Ноя 25, 2003 03:11:50

Я имею ввиду что-нибудь наподобии softice, только он по моему не умеет файлы копировать, или я ошибаюсь?!


Дата: Ноя 25, 2003 03:14:21

Ох-хо-хо. Ты хоть приблизительно представляешь сложность вопроса, который затронул?


Дата: Ноя 25, 2003 03:21:51

Потому и обращаюсь к знающим людям за помощью т.к. сам осилить не могу. Не ужели нет решения проблемы?!


Дата: Ноя 25, 2003 03:40:03

Используй совет hGoblin'а. Проверено, Reset помогает.


Дата: Ноя 25, 2003 04:39:29

Если знаешь какой прогой создаётся этот файл то срубай её ProcessKiller'ом,
который есть, например в PETools, если это нужно сделать из своей прграммы то
срубай через TerminateProcess, тогда этот файл уж точно останется
в том состоянии в котором был в момент работы проги, гы, чего проще, тоже
мне проблема. :-)


Дата: Ноя 25, 2003 05:47:17

sandeys

Слушай совет Asterix
Я лично пока не очень догоняю, как айс морозит систему. Подозреваю, там идут спин-блокировки. Надо посмотреть. Там код просто сильно этими IRQL пересыщен, поэтому догонять тяжело...


Дата: Ноя 25, 2003 11:54:18

Попробуй файл скопировать с помощью Backup-Managers стандартных виндовых. Если получится - то копируй файл через Backup API. Только вначале дай себе Backup привилегии


Дата: Ноя 25, 2003 20:50:19

Asterix
... через TerminateProcess ...
Не получится если он будет занят системным сервисом. Сервис можно остановить, но ито не всегда. Точно не знаю, но варианты м.б. такими:
1) просканировать все хендлы у каждого из процессов с соотв DuplicateHandle() и последущим GetObjectName & lstrcmpi. А затем CreateThreadEx и дерзай, т.е. считывай
2) пока не знаю. хотел было сказать про FileChanges, но не знаю что они могут.
3) Можно сканировать памяти процессов на предмет имени файла (ANSI or Unicode), а затем по п1


Дата: Ноя 25, 2003 21:22:13

Peshuha

Через TerminateProcess можно срубить всю систему а ты говоришь не получится ;-)


Дата: Ноя 25, 2003 21:27:50

1) просканировать все хендлы у каждого из процессов с соотв DuplicateHandle() и последущим GetObjectName & lstrcmpi. А затем CreateThreadEx и дерзай, т.е. считывай
Тока из драйвера, как Руссинович. Иначе получишь подвисон.
См. форум - я писал про это.


Дата: Ноя 25, 2003 22:08:54

rst
См. форум - я писал про это.

Плииз...


Дата: Ноя 26, 2003 01:21:25

Народ (всем огромное спасибо за участие в решении проблемы) привожу результаты опробованных на практике теоретических советов: сохранить файл через завершение процессов, не получается - как только завершается прога винда тут же трет и файл. Создать бэкап тоже не выходит - место где должен был быть файл оказывается пустым, подошел простой дедовский вариант - кнопа RESET!!!
Единственное неудобство заключается в том что новый файл генерится довольно часто... Но с этим мы уже как нибудь совладаем!

. 1 . 2 . >>


Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.063