Jump to content

Hyper-V Tastatureingaben per Powershell simulieren.


Direkt zur Lösung Gelöst von testperson,
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Geschrieben

Moin Profis!

Ich muss eine VM auf über 100 Server verteilen. XML für Import und die Festplatten VHD sind repliziert. Installiert ist eine Linux OS wo ich kein Zugriff habe. Der Entwickler stellt ein Menu für die Einstellungen bereit.

Ich importiere die Maschine mit einem Powershell script. Es ist auch kein Problem. Nun wollte ich auch die Einstellungen automatisieren.

Über F2 und Password kommt man in die Einstellungsmenu. Danach soll man Name, IP und Gateway eintragen. Reboot und der Rest erledigt man über die Weboberfläche.

So starte ich die Verbindung zu VM und übergebe die Tastatureingaben.

$FB = Get-VM -Name "VM*"

    $argl = "localhost -G " + $FB.VMID + " -C 1"

       Start-Process vmconnect.exe -ArgumentList $argl

    sleep -s 10

       $obj = New-Object -comObject Wscript.Shell

       sleep -s 3

       $obj.SendKeys("{F2}")

       sleep -s 3

       $obj.SendKeys("password")

       sleep -s 3

       $obj.SendKeys("{ENTER}")

       sleep -s 3

       $obj.SendKeys("{DOWN}")

       sleep -s 3

    $obj.SendKeys("{ENTER}")

       sleep -s 3

       $obj.SendKeys("{CLEAR}")

       sleep -s 3

       $obj.SendKeys( $vm_name )

Usw.

Ich habe das auf einem Client WIN 10 Hyper-V ausprobiert und es hat soweit funktioniert. Auf dem Server 2012 R2 in vmconnect.exe werden die Befehle nicht entgegen genommen. Wenn ich aber mit notepad.exe ausführe, wird alles wie gedacht übernommen.

Gibt es bei Hyper-V eine Sicherheitsvorrichtung, um das zu unterbinden?

Was läuft hier falsch?

Mit freundlichen Grüßen.

Geschrieben

Moin,

 

es wird dich nicht überraschen, du wirst es nicht hören wollen und du wirst ganz bestimmt richtig gute Gründe haben, warum du es doch machst, aber:

 

Man übergibt keine Kennwörter über ein Skript.

 

Gruß, Nils

 

  • Like 1
Geschrieben (bearbeitet)

Vielen Dank testperson!

Es funktioniert wunderbar.

 

NilsK, da hast vollkommen Recht. Wir nutzen Ivanti für die Software Verteilung und andere Dinge. Und dort, im Ivanti System, definiere ich eine Variable. Im Script (Actionscript) wird nur eine Variable sichtbar sein.

 

bearbeitet von f52U5h
  • 4 Wochen später...
Geschrieben

Einstellungen mit Mausklicks tätigen... ist das wirklich notwendig?

 

Normal haben alle Anwendungen eines davon:

- Ini-File oder dergleichen mit den Einstellungen

- Einen Ordner wo alles abgelegt ist

- Registry-Einträge

- Eine Datenbank des Programms

 

Mit Tools wie RegShot und Sysinternals kann man herausfinden/aufzeichnen was alles so geändert wird, wenn man die Einstellungen tätigt. Sind das nicht gerade verschlüsselte Files würde ich immer diesen Wege bevorzugen gegeünber Script-Klickerei.

Klar dank den vielen Telemetry-Zeugs ist das Filtern der Aufzeichnungen mitunter lästig geworden, aber ich finde es dennoch fast immer den besseren weg.

Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...