Programmieren - alles kontrollieren 4.940 Themen, 20.676 Beiträge

Automatisierung von DOS- Befehlen

jueki / 6 Antworten / Baumansicht Nickles

Ich hab grad wieder einen PC hier, der sich nach Updates totsucht und keine findet.
War nicht das erste Mal, diesen Effekt hab ich schon mehrfach beobachtet in der Vergangenheit.
Da half eigentlich immer, die folgenden Befehle als Admin in der Konsole auszuführen:

net stop wuauserv

net stop cryptSvc

net stop bits

net stop msiserver

ren C:\Windows\SoftwareDistribution SoftwareDistribution.old

ren C:\Windows\System32\catroot2 catroot2.old

net start wuauserv

net start cryptSvc

net start bits

net start msiserver

Meine Frage nun - das sollte doch auch automatisch machbar sein, als cmd oder bat?
Ich hab ein bischen rumprobiert, aber ich nehme an, der DOS- Geist, wenn er mich beobachtet hat, hat sich da einen Ast gelacht.
Ist sowas mit geringen Aufwand möglich oder lohnt sich der Aufwand da überhaupt nicht?
Danke schon mal fürs Lesen und für Kommentare.

Jürgen 

- Nichts ist schwerer und nichts erfordert mehr Charakter, als sich im offenem Gegensatz zu seiner Zeit zu befinden und laut zu sagen "NEIN!" Kurt Tucholsky
bei Antwort benachrichtigen
gelöscht_265507 jueki „Automatisierung von DOS- Befehlen“
Optionen

Das hier ist in Deiner Mehlbox.

regsvr32 comcat.dll /s
regsvr32 shdoc401.dll /s
regsvr32 shdoc401.dll /i /s
regsvr32 asctrls.ocx /s
regsvr32 oleaut32.dll /s
regsvr32 shdocvw.dll /I /s
regsvr32 shdocvw.dll /s
regsvr32 browseui.dll /s
regsvr32 browseui.dll /I /s
regsvr32 msrating.dll /s
regsvr32 mlang.dll /s
regsvr32 hlink.dll /s
regsvr32 mshtmled.dll /s
regsvr32 urlmon.dll /s
regsvr32 plugin.ocx /s
regsvr32 sendmail.dll /s
regsvr32 scrobj.dll /s
regsvr32 mmefxe.ocx /s
regsvr32 corpol.dll /s
regsvr32 jscript.dll /s
regsvr32 msxml.dll /s
regsvr32 imgutil.dll /s
regsvr32 thumbvw.dll /s
regsvr32 cryptext.dll /s
regsvr32 rsabase.dll /s
regsvr32 inseng.dll /s
regsvr32 iesetup.dll /i /s
regsvr32 cryptdlg.dll /s
regsvr32 actxprxy.dll /s
regsvr32 dispex.dll /s
regsvr32 occache.dll /s
regsvr32 occache.dll /i /s
regsvr32 iepeers.dll /s
regsvr32 urlmon.dll /i /s
regsvr32 cdfview.dll /s
regsvr32 webcheck.dll /s
regsvr32 mobsync.dll /s
regsvr32 pngfilt.dll /s
regsvr32 licmgr10.dll /s
regsvr32 icmfilter.dll /s
regsvr32 hhctrl.ocx /s
regsvr32 inetcfg.dll /s
regsvr32 tdc.ocx /s
regsvr32 MSR2C.DLL /s
regsvr32 msident.dll /s
regsvr32 msieftp.dll /s
regsvr32 xmsconf.ocx /s
regsvr32 ils.dll /s
regsvr32 msoeacct.dll /s
regsvr32 inetcomm.dll /s
regsvr32 msdxm.ocx /s
regsvr32 dxmasf.dll /s
regsvr32 l3codecx.ax /s
regsvr32 acelpdec.ax /s
regsvr32 mpg4ds32.ax /s
regsvr32 voxmsdec.ax /s
regsvr32 danim.dll /s
regsvr32 Daxctle.ocx /s
regsvr32 lmrt.dll /s
regsvr32 datime.dll /s
regsvr32 dxtrans.dll /s
regsvr32 dxtmsft.dll /s
regsvr32 WEBPOST.DLL /s
regsvr32 WPWIZDLL.DLL /s
regsvr32 POSTWPP.DLL /s
regsvr32 CRSWPP.DLL /s
regsvr32 FTPWPP.DLL /s
regsvr32 FPWPP.DLL /s
regsvr32 WUAPI.DLL /s
regsvr32 WUAUENG.DLL /s
regsvr32 ATL.DLL /s
regsvr32 WUCLTUI.DLL /s
regsvr32 WUPS.DLL /s
regsvr32 WUWEB.DLL /s
regsvr32 wshom.ocx /s
regsvr32 wshext.dll /s
regsvr32 vbscript.dll /s
regsvr32 scrrun.dll mstinit.exe /setup /s
regsvr32 msnsspc.dll /SspcCreateSspiReg /s
regsvr32 msapsspc.dll /SspcCreateSspiReg /s
regsvr32 /s urlmon.dll
regsvr32 /s mshtml.dll
regsvr32 /s shdocvw.dll
regsvr32 /s browseui.dll
regsvr32 /s jscript.dll
regsvr32 /s vbscript.dll
regsvr32 /s scrrun.dll
regsvr32 /s msxml.dll
regsvr32 /s actxprxy.dll
regsvr32 /s softpub.dll
regsvr32 /s wintrust.dll
regsvr32 /s dssenh.dll
regsvr32 /s rsaenh.dll
regsvr32 /s gpkcsp.dll
regsvr32 /s sccbase.dll
regsvr32 /s slbcsp.dll
regsvr32 /s cryptdlg.dll
regsvr32 /s schannel.dll
regsvr32 /s oleaut32.dll
regsvr32 /s ole32.dll
regsvr32 /s shell32.dll
regsvr32 /s initpki.dll
regsvr32 /s msscript.ocx
regsvr32 /s dispex.dll
regsvr32 jscript.dll /s
del %temp% /Q /F
net stop wuauserv
ren %windir%\system32\catroot2 catroot2.old
cd /d %windir%\SoftwareDistribution
rd /s DataStore /Q
regsvr32 wuapi.dll /s
regsvr32 wups.dll /s
regsvr32 wuaueng.dll /s
regsvr32 wucltui.dll /s
regsvr32 wuweb.dll /s
regsvr32 msxml.dll /s
regsvr32 msxml2.dll /s
regsvr32 msxml3.dll /s
regsvr32 urlmon.dll /s
net start wuauserv
exit

bei Antwort benachrichtigen
jueki gelöscht_265507 „Das hier ist in Deiner Mehlbox. regsvr32 comcat.dll /s ...“
Optionen

Danke, hab es schon erprobt.
Das ist allerdings sehr viel mehr drinnen, als die paar von mir angegebenen Befehle.
Muß das sein für die Automatisierung - oder sind da zusätzliche (und möglicherweise sinnvolle) Zusatzoptionen dabei?

Jürgen

- Nichts ist schwerer und nichts erfordert mehr Charakter, als sich im offenem Gegensatz zu seiner Zeit zu befinden und laut zu sagen "NEIN!" Kurt Tucholsky
bei Antwort benachrichtigen
mawe2 jueki „Automatisierung von DOS- Befehlen“
Optionen
Meine Frage nun - das sollte doch auch automatisch machbar sein, als cmd oder bat?

Warum nicht?

Was passiert denn, wenn Du das in eine Batch-Datei schreibst und diese ausführst? (Natürlich musst Du die auch wieder als Admin ausführen.)

Gruß, mawe2

bei Antwort benachrichtigen
jueki mawe2 „Warum nicht? Was passiert denn, wenn Du das in eine ...“
Optionen

Ich dachte, will man das alles mit einem Klick erledigen, das man da eine Art Programm benötigt.
Etwa in der Art

Ersten Befehl aktivieren
Warten auf Ausführung
Ausführung korrekt?
Nein - Fehlermeldung
Ja - Sprung zum nächsten Befehl
undsoweiter.

Nun staune ich - die bat- Datei von ITLok ist ja eigentlich nichts weiter, als eine Auflistung von Befehlen, die mit /s enden.

Und das funktioniert!
Habe ich anscheinend wieder viel zu kompliziert gedacht.

Jürgen

- Nichts ist schwerer und nichts erfordert mehr Charakter, als sich im offenem Gegensatz zu seiner Zeit zu befinden und laut zu sagen "NEIN!" Kurt Tucholsky
bei Antwort benachrichtigen
mawe2 jueki „Ich dachte, will man das alles mit einem Klick erledigen, ...“
Optionen
Etwa in der Art Ersten Befehl aktivieren Warten auf Ausführung Ausführung korrekt? Nein - Fehlermeldung Ja - Sprung zum nächsten Befehl undsoweiter.

Wenn Du irgendwelche Fehler bei der Abarbeitung des Scripts abfangen willst, wäre in der Tat so eine ähnliche Programmierung, wie Du sie Dir vorstellst nötig.

Ohne Fehlerbehandlung geht es aber zur Not auch, wenn alles perfekt läuft.

Befehlen, die mit /s enden

Der Parameter /s bedeutet nur, dass RegSvr32 im Hintergrundmodus arbeitet:

Ich würde das "i" sicherheitshalber immer klein schreiben, damit es nicht mit einem "l" (also: "L") verwechselt werden kann.

Gruß, mawe2

bei Antwort benachrichtigen
jueki mawe2 „Wenn Du irgendwelche Fehler bei der Abarbeitung des Scripts ...“
Optionen

Danke.
Wie schon gesagt - ich habe viel zu kompliziert gedacht.
Diese bat- Datei hab ich sogleich in meine Werkzeugkiste geräumt.

Jürgen

- Nichts ist schwerer und nichts erfordert mehr Charakter, als sich im offenem Gegensatz zu seiner Zeit zu befinden und laut zu sagen "NEIN!" Kurt Tucholsky
bei Antwort benachrichtigen