web-dev-qa-db-ja.com

再起動するたびにchkdskをどのように実行しますか?

少し前に質問がありました ログイン画面が表示される前にプログラムを実行する ここで、彼は写真に基づいて起動時にchkdskを実行したいと思っていましたが、実際には別のプログラムを実行したいと思っていました。

ええと、私は特にchkdskについて答えました、そして「再起動するたびにchkdskをどのように実行しますか?」に対する私の解決策を見つけるかもしれないと思った人もいます。面白い。

4
KCotreau

基本的に、起動時に毎回chkdsk/fまたはchkdsk/rを実行したい場合は、HKLM\SYSTEM\CurrentControlSet\Control\Session Managerで動作させるのではなく、シャットダウン時に実行するように設定できます。

方法は次のとおりです。

JUST yを含むファイルC:\ WINDOWS\system32\confirm.txtを作成します。

次に、次のコードを含むC:\ WINDOWS\system32\Chkdsk_Reboot.batを作成します。

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

XP Proまたは他のProレベルのOSがある場合は、gpedit.msc> Computer Configuration> Windows Settings> Scripts> Shutdownを開き、そのChkdsk_Reboot.batをシャットダウンスクリプトとして追加します。 。

次に再起動すると、chkdskコマンドが実行されます。

Gpedit.mscがないため、これがXP homeで機能するかどうかはわかりません。このディレクトリ構造を作成して、そこにバッチファイルを追加できる場合がありますが、ホームはグループポリシーを使用しないため、機能します:C:\ WINDOWS\System32\GroupPolicy\Machine\Scripts\Shutdown

enter image description here

6
KCotreau

chkdskは、すべての起動で実行されるようにすでに設定されています。

を見てみましょう HKLM\SYSTEM\CurrentControlSet\Control\Session Managerそして複数の文字列を見つけます(REG_MULTI_SZBootExecuteというエントリ。値 "autocheck autochk * "は、chkdskが起動時に実行されることを示していますが、バックグラウンドで実行され、ディスクエラーを検索しているため、表示されません。

chkdskがディスクの問題を検出すると、フルディスクスキャンのブルースクリーンが表示されます。

編集:

ここ (セクション:「ダーティビットとレジストリの「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: 
5
Diogo