4

Некоторое время назад возник вопрос:« Запустить программу до появления экрана входа в систему», где я подумал, что он имел в виду именно то, что хотел запустить chkdsk при загрузке на основе изображения, но он действительно хотел запустить другую программу.

Ну, я ответил специально для chkdsk, и я подумал, что некоторые могут найти мое решение: «Как вы запускаете chkdsk при каждой перезагрузке?" интересно.

2 ответа2

6

В основном, если вы просто хотите каждый раз запускать chkdsk /f или, возможно, chkdsk /r при загрузке, вы можете настроить его запуск при выключении, а не пытаться заставить его работать в HKLM\SYSTEM\CurrentControlSet\Control\Session Manager .

Вот как:

Создайте файл C:\WINDOWS\system32\confirm.txt с JUST y в нем.

Затем создайте C:\WINDOWS\system32\Chkdsk_Reboot.bat со следующим кодом:

echo y > confirm.txt
chkdsk c: /f /x < confirm.txt

Теперь, если у вас есть XP Pro или другие ОС уровня Pro, откройте gpedit.msc> Конфигурация компьютера> Параметры Windows> Сценарии> Завершение работы и добавьте этот Chkdsk_Reboot.bat в качестве сценария выключения.

При следующей перезагрузке вы запустите команду chkdsk.

Я не уверен, что это будет работать для XP дома, так как он не имеет gpedit.msc. Возможно, вы сможете создать эту структуру каталогов и добавить туда пакетный файл, но я не уверен, будет ли он работать, поскольку Home не использует групповую политику: C:\WINDOWS\System32\GroupPolicy\Machine\Scripts\Shutdown

5

chkdsk уже настроен для запуска при каждой загрузке.

Посмотрите на HKLM\SYSTEM\CurrentControlSet\Control\Session Manager и найдите многостроковую (REG_MULTI_SZ) запись с именем BootExecute . Значение « autocheck autochk * » говорит о том, что chkdsk будет запускаться при загрузке, однако вы не увидите его, потому что он работает в фоновом режиме и ищет ошибки на диске.

Если chkdsk обнаружит проблему с диском, вы увидите синий экран с полным сканированием диска.

Редактировать:

Образцы опций автоматической проверки, согласно здесь (раздел: "Грязный бит против записи Registy" Autochk ""):

Sample command              Resulting registry entry 
==============              ========================
Chkdsk C: /F                Autocheck autochk /p \??\C: 
Chkdsk C:\mountpoint /F     Autocheck autochk /p \??\VOLUME{GUID} 
Chkntfs D: E: /X            Autocheck autochk /k:D /k:E * 
Chkntfs G: /C               Autocheck autochk /m \??\G: 

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .