Консультация № 66334
10.12.2006, 12:07
0.00 руб.
0 2 1
Здравствуйте ! Подскажите пожалуйста: где и какие данные в реестре нужно изменить для программы cleanmgr.exe в XP чтобы при запуске с ключом cleanmgr.exe /sageset:ХХХХ можно использовать свои папки для очистки?

Обсуждение

Неизвестный
12.12.2006, 17:48
общий
это ответ


Здравствуйте, <b>Set</b>!

<b>/sagerun:n</b> и <b>/sageset:n</b>

[<a href=regjump://HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\cleanuppath>HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\cleanuppath</a>]

Можно попробовать, первично не внося изменения в реестр, присвоив параметр ярлыку...
Из-за неправильного использования параметров в реестре могут быть последствия вплоть до краха системы.

С Уважением, <b>Gin</b>.

Малость расширю ответ...

В ветке [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\MyComputer\]
есть ключи отвечающие за определенные действия. Если их нет или присутствую не все - их можно создать вручную. Допускается внесение изменений подставляя путь к другой утилите.

[..\BackupPath] - For the file backup utility.
Default NT/2000/XP: "%SystemRoot%\system32\ntbackup.exe"

[..\ChkDskPath] - For the disk repair utility (chkdsk)
Default NT/2000/XP: "%SystemRoot%\system32\chkdsk.exe %c"

[..\CleanupPath] - For the disk cleanup utility
Default NT/2000/XP: "%SystemRoot%\system32\cleanmgr.exe /D %c"

[..\DefragPath] - For the disk defragmenter
Default NT/2000/XP: "%systemroot%\system32\dfrg.msc %c"

В Вашем случае нас интересует ключ <u>CleanupPath</u>.
Да, Вы можете редактировать значение праметра прямо в реестре. Выглядеть это будет так:

%SystemRoot%\system32\cleanmgr.exe /D %<font size=3 color=#66CC00><b>х</b></font>

То есть, изменяем букву диска на желаемую. Это обусловит запуск очистки именно нужного диска. Заметте, дисков. Подстановка в таком варианте: %SystemRoot%\system32\cleanmgr.exe /D %х:\25\ ничего не даст.
Аналогично не даст результа и подстановка параметра <i>/sageset</i>.


Параметры <i>/sageset:n</i> и <i>/sagerun:n</i> сработают в командной строке. Первый из параметров вызовет диалоговое окно с выбором папок для опустошения, а второй, без лишних запросов-вопросов, сразу приступит к борьбе за чистоту.
Параметр <i>/sageset</i> предназначен для назначения заданий. Дополнительный параметр через двоеточие <b>n</b> может принимать значение от 1 до 65535.
Параметр /sagerun предназначен для выполнения заданых задач параметром /sageset. А тот же дополнительный парамтр <b>n</b> соответствует порядковому номеру поставленной задачи. Или проще. Если есть установленное задание <i>cleanmgr /sageset:10</i> и запустить <i>cleanmgr /sagerun:10</i> - будет выполнено (условно говоря) задание номер 10.

Тут есть и парадоксы. Параметр <i>/d</i> предназначен для расширения возможности и позволяет выбрать диск - cleanmgr.exe /D e:.
Но если использовать параметр <i>/sagerun</i> [ <i>cleanmgr.exe /D e: /sagerun</i> ], то получиться что параметр <i>/d</i> не сработает и будут очищаться все диски по порядку. То есть, параметр /sagerun отменяет наличие параметра /d. Это плохо. Почему <font size=1>мелкие</font> так придумали?

Честно говоря, это все мои догадки относительно этих параметров и дополнительных параметров. Так как просмотрев не одину пару тройку другую десятков сайтов ничего конкретного толкового! (во всяком случае для себя) в описаниях и применениях этих параметров неувидел. Большей часть это копии статеек с различных сайтов, кем-то и когда-то выдранной клочком с сайта мелких, без особых припудриванний вставлены на офиширование.

Получается, что при любом варианте голое использование параметров <i>/sageset:n</i> и <i>/sagerun:n</i> Вас мало устроит.
Как альтернативу могу предложить Вам использовать bat-файлы. Их применение ускорит и облегчит Вам работу. (что-то понесло - написал самую малость расширю...)
В написании каких-либо проблем нет. Привожу пример прототипа:

*************************************************
title Удаляем все подряд
@echo on
cd c:
dir c:\25\
md c:\251\
tree c:\25 /f > c:\251\log.txt
rd /s /q c:\25\
md c:\25\
start "Список удаленных файлов" type c:\251\log.txt
@echo Готово! :)
exit
*************************************************

Это вариант для одной папки, но можно таким же образом сделать для всех других папок. Можно объеденить запуск очистки и работы файлов в один файл. Можно назначить время Планировщиком...

Буду заканчивать....
Если что-то непонятно - пожалуйста, спрашивайте.

С Уважением, <b>Gin</b>. :)


Неизвестный
13.12.2006, 18:39
общий
:) Надеюсь вопрос исчерпан. А может кто-нибудь еще что-то добавит...?
Форма ответа