Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Βρηκα απο καπου το παρακατω batch,το οποιο χρησιμοποιειται για να καθαριζει το icon database των windows 7.

το batch δουλευει κανονικα με μονη εξαιρεση οτι παντα κανει restart τα windows ακομη και αν πατησω No oταν με ρωταει.

Μηπως ξερει καποιος που βρισκεται το λαθος στο κωδικα και πως να το διορθωσω ωστε να μην κανει restart οταν παταω No (N δηλαδη)?

 

 

@echo off

cls

echo The Explorer process must be killed to delete the Icon DB.

echo Please SAVE ALL OPEN WORK FIRST

pause

taskkill /IM explorer.exe /F

echo Attempting to delete Icon DB...

If exist %userprofile%\AppData\Local\IconCache.db goto delID

echo Previous Icon DB not found...trying to build a new one

goto :main

 

:delID

cd /d %userprofile%\AppData\Local

del IconCache.db /a

pause

echo Icon DB successfully deleted

goto main

 

:main

echo Windows 7 must be restarted to rebuild the Icon DB.

echo Restart now? (Y/N):

set /p choice=

If %choice% == y goto restart

if not %choice% == y goto end

 

:end

echo Shutdown aborted...please close this window

explorer.exe

 

:restart

shutdown /r /t 0

exit

Δημοσ.

Κάνε rem το shutdown /r /t 0

 

Για να μην κάνει έτσι και αλλιώς

 

Αλλιώς δοκίμασε να αλλάξεις

 

if not %choice% == y goto end

 

 

με

 

If %choice% == n goto end

Δημοσ.
if not %choice% == y goto end

 

:end

 

Βασικά αυτές οι δύο γραμμές είναι άχρηστες νομίζω. Δεν χρειάζεται να γίνει αυτός ο έλεγχος.

Στην προηγούμενη γραμμή ελέγχεις αν επιλέχθηκε το y. Καλά είναι να βάλεις και ένα OR και να ελέγχεις και για το κεφαλαίο Y γιατί αλλιώς αν είναι πατημένο το cpas lock και ο χρήστης πατήσει Y δεν θα κάνει restart. Έτσι, αν δεν είναι το y ή το Υ προχωράει μόνο του στην επόμενη εντολή που θα είναι η echo και η εκκίνηση του explorer.

Εδώ μπορείς να βάλεις ένα exit αμέσως μετά το explorer.exe για να τερματίζει σίγουρα το bat

Δημοσ.

Το τροποποίησα για να τρέχει και σε ΧΡ αλλά μετά την εκτέλεσή του δεν αλλάζει το πληκτρολόγιο από αγγλικά σε ελληνικά και χρειάζεται εκ νέου ρύθμιση με τις "Ρυθμίσεις πλήκτρων". Τί λάθος υπάρχει;

 

@echo off

cls

echo The Explorer process must be killed to delete the Icon DB.

echo Please SAVE ALL OPEN WORK FIRST

pause

taskkill /IM explorer.exe /F

echo Attempting to delete Icon DB...

IF DEFINED ProgramData (

goto Seven

) ELSE (

goto XP

)

 

:Seven

If exist "%userprofile%\AppData\Local\IconCache.db" goto delID

echo Previous Icon DB not found...trying to build a new one

goto :main

 

:delID

cd /d %userprofile%\AppData\Local

del "IconCache.db" /a

pause

echo Icon DB successfully deleted

goto main

 

:main

echo Windows 7 must be restarted to rebuild the Icon DB.

echo Restart now? (Y/N):

set /p choice=

If %choice% == y goto restart

If %choice% == n goto end

 

:end

echo Shutdown aborted...please close this window

explorer.exe

 

:restart

shutdown /r /t 0

exit

 

:XP

If exist "%userprofile%\Local Settings\Application Data\IconCache.db" goto delID

echo Previous Icon DB not found...trying to build a new one

goto :main

 

:delID

cd /d "%userprofile%\Local Settings\Application Data"

del "IconCache.db" /a

pause

echo Icon DB successfully deleted

goto main

 

:main

echo Windows XP must be restarted to rebuild the Icon DB.

echo Restart now? (Y/N):

set /p choice=

If %choice% == y goto restart

If %choice% == n goto end

 

:end

echo Shutdown aborted...please close this window

explorer.exe

 

:restart

shutdown /r /t 0

exit

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...