dievonnebenan
Goto Top

prozesspriorität mit wmic ändern

wie kann ich unter win2k3 einem prozess nachträglich eine andere priorität zuweisen?

folgendes problem hat mich heute morgen ereilt und ich dachte zuerst... kann ja nicht so schwer sein, doch weit gefehlt...

im moment läuft das serverbackup sehr lange und behindert ab 9.00 uhr morgens das arbeiten der angestellten durch lange wartezeiten bei einigen programmen... also dachte ich mir, ich lasse um 9:00 eine batch durchlaufen, die mit folgendem befehl die priorität senkt:

"wmic process where caption='backuptool.exe' call setpriority 8"

die 8 habe ich mit "wmic process get caption, pritority" ermittelt, was dem prio-level normal entspricht. leider erzeugt das ganze einen fehler denn die wmic erwartet hier eine zahl im format sint32 (weitere VERSTÄNDLICHE infos konnte ich dazu allerdings nicht auftreiben)

funktioniert hat dann "wmic process where caption='backuptool.exe' call setpriority 64" - nur, dass ich das ganze mit Ja(j) oder Nein(n) bestätigen sollte, was ebenfalls nicht funktioniert hat, da der befehl für Ja eigentlich ein Y erwartet... ;)

ziel muss sein, die backuptool.exe mit prio-level "niedriger als normal" auszuführen. wer hat also eine idee, welche werte zu welchem prio-level führen und wie ich die bestätigungsabfrage umgehen kann...

oder gibt es vielleicht noch einen anderen weg, via shell und OHNE benutzereingaben die priorität laufender prozesse zu ändern?

thx & bida

das chriskind

Content-Key: 69734

Url: https://administrator.de/contentid/69734

Printed on: April 20, 2024 at 03:04 o'clock

Member: AndreasHoster
AndreasHoster Oct 01, 2007 at 11:41:50 (UTC)
Goto Top
Du könntest ein kleines VBS Skript verwenden:

'* Verbindung mit WMI (Windows Management Instrumentation) aufnehmen
Set wmi = GetObject("winmgmts:{(Security)}")
Set oProc = wmi.ExecQuery("select * from win32_process where name='backuptool.exe'")
For each proc in oProc
call proc.SetPriority(16384)
Next

Einfach den Code oben in einer .vbs Datei speichern und mit wscript.exe Name.vbs starten.

16384 ist übrigens below normal.
Siehe http://msdn2.microsoft.com/en-us/library/aa393587.aspx , da stehen auch die Werte für die anderen Prios.
Member: dievonnebenan
dievonnebenan Oct 02, 2007 at 15:55:55 (UTC)
Goto Top
moin andreas

deine lösung hat super funktioniert

vielen dank und bis die tage