Aufrufen einer MMC-Snap-In-Funktion über die Windows-Befehlsshell: Ist dies möglich?

1287
robob

Ich muss eine MMC-Snap-In-Funktion über die Command Shell eines Windows-Computers ausführen. Ich brauche es, um diesen Befehl in demselben Windows-PC einzuplanen und im Hintergrund auszuführen.

Diese Fragen könnten wahrscheinlich etwas seltsam erscheinen, aber ich habe ein Programm, das ein Debug-Protokoll nur über die MMC-Snap-In-Konsole erstellt. Und ich muss diese Aufgabe automatisieren, um dieses Protokoll programmatisch zu lesen!

Wie kann man das machen?

Vielen Dank

2

2 Antworten auf die Frage

1
Dan Fitch

Sie können auf die MMC 2.0-Automatisierungsbibliothek über COM von Powershell aus zugreifen. Möglicherweise unangenehm, aber funktionsfähig.

So starten Sie Powershell:

$mmc = New-Object -ComObject MMC20.Application $mmc.Load("path\to\some.msc") 
  1. Sie müssen wahrscheinlich Admin sein.
  2. Die API ist ziemlich schrecklich, aber Sie sollten über sie auf die Daten zugreifen können. Hier ist ein VB-Beispiel zum Extrahieren von Dingen aus den Elementen eines Snap-Ins.
0
Steve

Versuchen Sie, AutoIT zu verwenden :

AutoIt v3 ist eine Freeware-BASIC-ähnliche Skriptsprache, die zur Automatisierung der Windows-Benutzeroberfläche und allgemeinen Skripts entwickelt wurde. Es verwendet eine Kombination aus simulierten Tastenanschlägen, Mausbewegungen und Fenster- / Steuerelementmanipulationen, um Aufgaben auf eine Weise zu automatisieren, die mit anderen Sprachen (z. B. VBScript und SendKeys) nicht möglich oder zuverlässig ist. AutoIt ist auch sehr klein und in sich geschlossen und wird auf allen Windows-Versionen sofort ausgeführt, ohne dass störende Laufzeiten erforderlich sind!