前不久有一個問題,在出現登入畫面之前執行程式,我認為他的具體意思是他想根據圖片在啟動時運行 chkdsk,但他確實想運行一個不同的程式。
好吧,我專門回答了 chkdsk,我想有些人可能會找到我的解決方案“如何在每次重新啟動時運行 chkdsk?”有趣的。
答案1
基本上,如果您只想每次啟動時運行 chkdsk /f 或 chkdsk /r ,您可以將其設置為在關閉時運行,而不是嘗試使其在HKLM\SYSTEM\CurrentControlSet\Control\Session Manager
.
具體方法如下:
建立一個檔案 C:\WINDOWS\system32\confirm.txt,y
其中包含 JUST。
然後建立 C:\WINDOWS\system32\Chkdsk_Reboot.bat,其中包含以下程式碼:
echo y > confirm.txt
chkdsk c: /f /x < confirm.txt
現在,如果您有 XP Pro 或其他專業級作業系統,請開啟 gpedit.msc>電腦設定>Windows 設定>腳本>關機,並將 Chkdsk_Reboot.bat 新增為關機腳本。
下次重新啟動時,您將執行 chkdsk 命令。
我不確定這是否適用於 XP home,因為它沒有 gpedit.msc。您也許可以建立此目錄結構並在其中新增批次文件,但我不確定它是否有效,因為主頁不使用群組原則:C:\WINDOWS\System32\GroupPolicy\Machine\Scripts\Shutdown
答案2
chkdsk
已設定為在每次啟動時運行。
檢視HKLM\SYSTEM\CurrentControlSet\Control\Session Manager
並找到名為 的多字串 ( REG_MULTI_SZ
) 條目BootExecute
。值“ 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: