WinFuture-Forum.de: Script für Spooler Neustart anpassen bitte - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
  • 2 Seiten +
  • 1
  • 2

Script für Spooler Neustart anpassen bitte

#1 Mitglied ist offline   Ler-Khun 

  • Gruppe: aktive Mitglieder
  • Beiträge: 2.475
  • Beigetreten: 16. Dezember 06
  • Reputation: 137

geschrieben 14. November 2014 - 22:39

Da meine Druckerkombigerät nur mit einem Behilfstreiber von MS läuft, schmiert öfter mal der Druckerwarterschlangen-Dienst ab.
Beim Dienst selbst ist schon unter Wiederherstellung bei 1. & 2.Fehler "Dienst "neustraten" eingestellt, aber das funzt nicht.

Handarbeit ist also angesagt. Der Weg dahin dauert aber zu lang.
Drum möchte ich das mit 'nem Script erledigen.

Das hier fand ich dazu bei meiner Recherche

Zitat

net stop spooler
FOR %%T IN (%systemroot%\system32\spool\printers\*.*) DO DEL %%T
net start spooler


Das ist allerdings für NT

Es wäre super wenn mir das jemand für Win7 x64 anpassen würde.
MfG


Niemand hat dich gefragt, ob du leben willst. Also hat dir auch niemand zu sagen, wie du leben sollst!
0

Anzeige

#2 Mitglied ist offline   d4rkn3ss4ev3r 

  • Gruppe: aktive Mitglieder
  • Beiträge: 3.898
  • Beigetreten: 03. Januar 09
  • Reputation: 499

geschrieben 15. November 2014 - 08:41

Script braucht Adminrechte.

net stop spooler
del /Q "%systemroot%\system32\spool\printers\*.*"
net start spooler

"Jene, die grundlegende Freiheit aufgeben würden, um eine geringe vorübergehende Sicherheit zu erwerben,
verdienen weder Freiheit noch Sicherheit." (Benjamin Franklin)


ACTA] | IPRED | SOPA | PIPA | CISPA | INDECT | TPP | TAFTA | Stop CETA + Stop TTIP
> Mein Hells Toolbox CMD Script <
Powered by Goanna
1

#3 Mitglied ist offline   Ler-Khun 

  • Gruppe: aktive Mitglieder
  • Beiträge: 2.475
  • Beigetreten: 16. Dezember 06
  • Reputation: 137

geschrieben 15. November 2014 - 14:03

Ich habe mir schon gedacht dass du dich dem annimmst. ;-)

Danke schon mal. Wird wohl ein paar Tage dauern bis ich Feedback geben kann, da ich nicht auf Teufel komm raus irgendetwas Drucken moechte um ein Abschmieren zu provozieren.

Das in der ersten Zeile ist ein Tippfehler und "spoolerdel" wird nicht zusammengeschrieben, oder doch?
MfG


Niemand hat dich gefragt, ob du leben willst. Also hat dir auch niemand zu sagen, wie du leben sollst!
0

#4 Mitglied ist offline   Sturmovik 

  • Gruppe: aktive Mitglieder
  • Beiträge: 3.725
  • Beigetreten: 10. Januar 08
  • Reputation: 415

geschrieben 15. November 2014 - 14:46

Anscheinend wird dir der erste Zeilenumbruch nicht angezeigt.

Erste Zeile: net stop spooler
zweite Zeile del /Q usw.
«Geschichte wiederholt sich nicht, aber sie reimt sich» (Mark Twain)

Unix won't hold your hand. You wanna shoot your foot, Unix reliably delivers the shot.

True Cloudstorage
0

#5 Mitglied ist offline   d4rkn3ss4ev3r 

  • Gruppe: aktive Mitglieder
  • Beiträge: 3.898
  • Beigetreten: 03. Januar 09
  • Reputation: 499

geschrieben 15. November 2014 - 18:32

Wird dir das nicht so angezeigt?:
Angehängtes Bild: codebox.png

Wie Sturmovik schon meinte, ist del die zweite Zeile.
"Jene, die grundlegende Freiheit aufgeben würden, um eine geringe vorübergehende Sicherheit zu erwerben,
verdienen weder Freiheit noch Sicherheit." (Benjamin Franklin)


ACTA] | IPRED | SOPA | PIPA | CISPA | INDECT | TPP | TAFTA | Stop CETA + Stop TTIP
> Mein Hells Toolbox CMD Script <
Powered by Goanna
0

#6 Mitglied ist offline   Ler-Khun 

  • Gruppe: aktive Mitglieder
  • Beiträge: 2.475
  • Beigetreten: 16. Dezember 06
  • Reputation: 137

geschrieben 15. November 2014 - 18:38

Doch doch, alles korrekt. Tapatalk mit dem ich vorhin On war, kann wohl mit der Codebox nicht richtig umgehen. Hier am PC wird es richtig angezeigt.

Ich habe mir gerade mal eine bat angelegt die jetzt auf ihren Einsatz wartet.^^

Edit: Das ich jetzt erst drauf kommm. :blush:
Natürlich kann man testen obs funzt. Einfach das Dienstfenster im Vordergrund halten.

@Scriptmaster D, ähh d4rkn3ss4ev3r: Ich habe zwar erst in 2 Wochen Purzeltag, ber wie wärs mit einem Vorabgeschenk? :rolleyes:
Würdest du freundlicherweise noch mit einbauen dass nach dem Reset des Dienstes der Druckauftrag gleich noch mal neu gesendet wird?
Oder ist das nicht möglich/zu aufwendig zu schreiben?

Dieser Beitrag wurde von Ler-Khun bearbeitet: 15. November 2014 - 19:05

MfG


Niemand hat dich gefragt, ob du leben willst. Also hat dir auch niemand zu sagen, wie du leben sollst!
0

#7 Mitglied ist offline   d4rkn3ss4ev3r 

  • Gruppe: aktive Mitglieder
  • Beiträge: 3.898
  • Beigetreten: 03. Januar 09
  • Reputation: 499

geschrieben 15. November 2014 - 19:43

Gesagt, getan:

@echo off
:stop
net stop spooler >nul
if errorlevel 1 echo Error beim Beenden des Dienstes &set err=1 &goto :stop
for /f "tokens=1" %%i in ('dir %systemroot%\system32\spool\printers /b /o:d') do set datei=%%i
set datei=%datei:~0,-3%
:copy
copy /V "%systemroot%\system32\spool\printers\%datei%SPL" "%temp%" >nul
if errorlevel 1 echo Error beim kopieren von %datei%SPL &set err=1
copy /V "%systemroot%\system32\spool\printers\%datei%SHD" "%temp%" >nul
if errorlevel 1 echo Error beim kopieren von %datei%SHD &set err=1
if defined err pause &goto :copy
del /Q "%systemroot%\system32\spool\printers\*.*"
move "%temp%\%datei%SPL" "%systemroot%\system32\spool\printers\" >nul
move "%temp%\%datei%SHD" "%systemroot%\system32\spool\printers\" >nul
:start
net start spooler >nul
if errorlevel 1 echo Error beim Starten des Dienstes &set err=1 &goto :start
if not defined err echo Ales ok.
echo.&pause


Alles inklusive Fehlererkennung.
Ich ging jetzt davon aus das nur der letzte Druckauftrag gespeichert werden soll.
"Jene, die grundlegende Freiheit aufgeben würden, um eine geringe vorübergehende Sicherheit zu erwerben,
verdienen weder Freiheit noch Sicherheit." (Benjamin Franklin)


ACTA] | IPRED | SOPA | PIPA | CISPA | INDECT | TPP | TAFTA | Stop CETA + Stop TTIP
> Mein Hells Toolbox CMD Script <
Powered by Goanna
1

#8 Mitglied ist offline   Ler-Khun 

  • Gruppe: aktive Mitglieder
  • Beiträge: 2.475
  • Beigetreten: 16. Dezember 06
  • Reputation: 137

geschrieben 16. November 2014 - 12:06

Uih supi. Vielen Dank :-) Ja richtig, nur der letzte Auftrag. Halt der der vergeschlagen ist. Ich werde es gleich mal teyten sobald ich morgen wieder zu hause bin. Muesste ja gehen wenn man den Druckauftrag einfach anhaelt zwischendrin.
MfG


Niemand hat dich gefragt, ob du leben willst. Also hat dir auch niemand zu sagen, wie du leben sollst!
0

#9 Mitglied ist offline   Ler-Khun 

  • Gruppe: aktive Mitglieder
  • Beiträge: 2.475
  • Beigetreten: 16. Dezember 06
  • Reputation: 137

geschrieben 19. November 2014 - 22:14

So, ich habe es heute mal ausprobiert. Es funktioniert (bedingt).
Der Umstand für den ich das Script gerne haben wollte ist noch nicht eingetreten, aber ich habe es folgendermaßen getestet:

Druckauftrag gestartet. Dann unter "Alle aktiven Drucker öffnen" den Druckauftrag dort via Kontextmenü angehalten und das Script ausgeführt.
Das produziert eine Fehlermeldung (siehe unten)und der Spooler-Dienst wird beendet. Ich muss ihn dann händisch wieder starten.

Als zweites habe ich den Drucker daran gehindert ein Blatt einzuziehen und somit das Fertigstellen des Druckauftrages verhindert. Dann das Script ausgeführt und es hat funktioniert. Allerdings zieht der Drucker danach noch ein leeres Blatt durch. Das ist reproduzierbar. Wenn ich das Dokument normal drucke passiert dies nicht.
Auch wird der Druckauftrag nicht gelöscht. Er steht noch in der Warteschlange. Scheint aber nur ein optisches Problem zu sein.
Denn wenn ich danach ein anderes Dokument drucke, ist der Auftrag weg.
Angehängtes Bild: Unbenannt.JPG

Dieser Beitrag wurde von Ler-Khun bearbeitet: 19. November 2014 - 22:22

MfG


Niemand hat dich gefragt, ob du leben willst. Also hat dir auch niemand zu sagen, wie du leben sollst!
0

#10 Mitglied ist offline   RalphS 

  • Gruppe: VIP Mitglieder
  • Beiträge: 7.735
  • Beigetreten: 20. Juli 07
  • Reputation: 855

geschrieben 19. November 2014 - 23:06

Da war die Variable "datei" leer gewesen. :huh:

Hab grad nur Windows TP zum Testen greifbar - hier hab ich auf SYSTEMROOT\System32\Spool\PRINTERS keinen Zugriff - auch als Admin nicht. Wenn das bei Dir ähnlich ist, liegt es daran.
"If you give a man a fish he is hungry again in an hour. If you teach him to catch a fish you do him a good turn."-- Anne Isabella Thackeray Ritchie

Eingefügtes Bild
Eingefügtes Bild
0

#11 Mitglied ist offline   Ler-Khun 

  • Gruppe: aktive Mitglieder
  • Beiträge: 2.475
  • Beigetreten: 16. Dezember 06
  • Reputation: 137

geschrieben 20. November 2014 - 00:30

Zitat

Da war die Variable "datei" leer gewesen
Was genau heißt das?

Momentan habe ich auch keinen Zugriff auf dem Ordner (Standard Konto)
Welcher Rechte setze ich wenn ich auf Fortfahren drücken würde um dauerhaften Zugriff zu erhalten?
MfG


Niemand hat dich gefragt, ob du leben willst. Also hat dir auch niemand zu sagen, wie du leben sollst!
0

#12 Mitglied ist offline   d4rkn3ss4ev3r 

  • Gruppe: aktive Mitglieder
  • Beiträge: 3.898
  • Beigetreten: 03. Januar 09
  • Reputation: 499

geschrieben 20. November 2014 - 20:20

Also laut dem Screen hast du das Script nicht als Admin gestartet. Ohne Adminrechte geht es nicht (wie oben erwähnt)

Das Script macht alles automatisch. Du musst keinen Dienst beenden oder starten.

Die Rechte brauchst du natürlich dann für %SYSTEMROOT%\System32\Spool\PRINTERS
"Jene, die grundlegende Freiheit aufgeben würden, um eine geringe vorübergehende Sicherheit zu erwerben,
verdienen weder Freiheit noch Sicherheit." (Benjamin Franklin)


ACTA] | IPRED | SOPA | PIPA | CISPA | INDECT | TPP | TAFTA | Stop CETA + Stop TTIP
> Mein Hells Toolbox CMD Script <
Powered by Goanna
0

#13 Mitglied ist offline   Decay 

  • Gruppe: aktive Mitglieder
  • Beiträge: 884
  • Beigetreten: 09. Juni 04
  • Reputation: 7

geschrieben 20. November 2014 - 20:39

Vllt hilft es ja, den Spooler-Dienst neu zu installieren.

Zitat

1. Öffnen Sie die Eingabeaufforderung über „Start“, „Ausführen“ und geben Sie „cmd“ ein. In Windows 7/Vista geben Sie „cmd“ in die „Programme/Dateien durchsuchen“-Zeile ein und klicken das Suchergebnis „cmd.exe“ doppelt an.

2. Wechseln Sie mit dem Befehl „cd c:\windows\ system32“ und "Enter" zum Ordner der Windows-Installation. Das ist in der Regel „C:\Windows“.

3. Benennen Sie die Datei „spoolsv“ mit folgendem Befehl um: „ren spoolsv.exe spoolsv.alt“, und drücken Sie "Enter!.

4. Beenden Sie die Eingabeaufforderung mit dem Befehl „exit“.

5. Legen Sie den Datenträger Ihres Windows XP, Vista oder Windows 7 in das CD/DVD-Laufwerk ein und halten Sie beim Einlegen des Datenträgers die Shift-Taste gedrückt, um den Autostart der Installation von Windows XP, Vista oder Windows 7 zu verhindern.

6. Klicken Sie auf „Start“ und auf „Ausführen“, geben Sie ins Feld „Öffnen“ den Befehl „expand <CD>: \i386\spoolsv.ex_ C:\Windows\system32\spoolsv.exe“ ein und klicken Sie danach auf „OK“. „CD“ steht dabei für die Laufwerkskennung Ihres CD/ DVD-Laufwerks.

7. Starten Sie Ihren Computer neu.



Source von hier

Dieser Beitrag wurde von Decay bearbeitet: 20. November 2014 - 20:41

0

#14 Mitglied ist offline   Ler-Khun 

  • Gruppe: aktive Mitglieder
  • Beiträge: 2.475
  • Beigetreten: 16. Dezember 06
  • Reputation: 137

geschrieben 21. November 2014 - 23:44

Ich bin der Meinung ich hätte es mit Adminrechten ausgeführt. Werde es morgen aber nochmal testen.

@Dewclay: Ähm thx, aber der Dienst tut seinen Dienst. Das Problem liegt am Treiber.
Mein Standalone-Drucker verursacht dieses Problem nicht.
MfG


Niemand hat dich gefragt, ob du leben willst. Also hat dir auch niemand zu sagen, wie du leben sollst!
0

#15 Mitglied ist offline   Decay 

  • Gruppe: aktive Mitglieder
  • Beiträge: 884
  • Beigetreten: 09. Juni 04
  • Reputation: 7

geschrieben 24. November 2014 - 18:03

Beitrag anzeigenZitat (Ler-Khun: 21. November 2014 - 23:44)

@Dewclay: Ähm thx, aber der Dienst tut seinen Dienst. Das Problem liegt am Treiber.
Mein Standalone-Drucker verursacht dieses Problem nicht.


Awwwww, okay, das war nicht bekannt :blush:
0

Thema verteilen:


  • 2 Seiten +
  • 1
  • 2

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0