Hallo Enrico,
ich dachte eigentlich bisher, dass ich in Windows schon so ziemlich jedes Bit beim Vornamen kenne - naja, jedenfalls zum Großteil. ;)
Aber wenn ich mir deine Batchdatei so ansehe, dann beschleicht mich der Verdacht, dass ich bei einigen Windows-Interna noch von dir lernen könnte. Umgekehrt wahrscheinlich auch. *g*
regsvr32 /u /s mydocs.dll REM Ordner "Eigene Bilder", "Eigene Musik" und "Eigene Videos" löschen >NUL
Hey, das ist spannend: Das heißt, ich werde damit die Nerverei los, dass alle Nase lang Ordner mit diesen Namen neu angelegt werden? Ist dir bekannt, ob sich das auch auf das Verzeichnis "Eigene Dateien" erstreckt, oder wenn nicht, ob man das Prinzip darauf ausweiten kann?
Bei Windows 98 hatte ich es seinerzeit geschafft, diesen "Eigene Dateien"-Quatsch durch Patchen einiger Systemdateien loszuwerden. Wenn ich mich recht erinnere, habe ich dazu alle Referenzen auf mydocs.dll aus der Registry gelöscht, die Datei selbst ebenfalls, und musste dann noch irgendwo in der shell32.dll was patchen.
So habe ich Windows auch abgewöhnt, im Root jedes Laufwerks ein Verzeichnis mit dem Namen "recycled" anzulegen - den Windows-Papierkorb hatte ich zwar schon abgestellt, aber Windows achtet dann immer noch drauf, dass die zugehörigen recycled-Verzeichnisse trotzdem da sind.
Bei Windows 2000 habe ich das leider noch nicht geschafft - liegt aber vermutlich daran, dass ich es hier noch nicht probiert habe. ;)
regsvr32 /u /s regwizc.dll REM Registration-Wizard abschalten >NUL
Was würde der sonst tun? Wozu ist der gut?
start "sfc /purgecache" REM SFC-Ordner löschen >NUL
start "sfc /cachesize=0" REM SFC-Ordner abschalten >NUL
attrib -R -A -S -H %SYSTEMROOT%\system32\dllcache /S >NUL
deltree %SYSTEMROOT%\system32\dllcache /s >NUL
attrib -R -A -S -H %SYSTEMROOT%\Driver Cache\i386\driver.cab >NUL
del %SYSTEMROOT%\Driver Cache\i386\driver.cab /S >NUL
Das hab ich "endgültiger" gemacht: Ein Patch an der sfc.dll, dann kann man -wie in den Urversionen von XP/2k ohne Service Pack- den Systemdateischutz komplett deaktivieren und das entsprechende Cache-Verzeichnis löschen.
Mein einziges Problem ist, dass die beiden Zeilen start "sfc /purgecache" und start "sfc /cachesize=0" eigene DOS-Fenster öffnen (ohne den vorangesetzten Befehl "start" hätten die Aufrufe aber nicht funktioniert), die ich immer manuell schliessen muss.
Das Öffnen zusätzlicher Konsolenfenster ist hier nicht einzusehen. sfc.exe ist eine reinrassige Win32-Applikation, warum sollte Windows beim Aufruf dieser Anwendung ein Konsolenfenster öffnen? Das will mir nicht einleuchten.
Leider hast du dann AFAIK auch keine Möglichkeit, diese Fenster automatisch wieder zu schließen.
Aber wieso überhaupt mit dem "start"-Kommando? Was mich außerdem irritiert, sind die Anführungszeichen, die du gesetzt hast. Das sollte ohne genauso funktionieren:
sfc /purgecache
Kann ich auch die Importierung einer reg-Datei in die Registrierdatenbank aus einer Batchdatei veranlassen ?
Klar doch, ganz einfach mit
regedit <regfile>
oder, wenn's ohne Rückfrage und Bestätigung sein soll
regedit <regfile> /Q
Schönes Wochenende noch,
Martin