Das Forum wurde aktualisiert. Wurde höchste Zeit. Wenn etwas nicht funktioniert, bitte gerne hier jederzeit melden.
(Das "alte Design" kommt wieder, wird ne Weile brauchen!)

host automatisch herunterfahren wenn vm beendet

Hilfe bei Problemen mit der Installation und Benutzung des VMware Player.

Moderatoren: irix, stefan.becker, continuum, Dayworker, Tschoergez

Member
Beiträge: 35
Registriert: 23.09.2008, 12:22

host automatisch herunterfahren wenn vm beendet

Beitragvon booty3009 » 09.02.2010, 15:31

Hallo!

Ich möchte gerne nach dem herunterfahren einer VM (Windows 2000 Pro SP4), den Host (Windows 7 Professionel) auch herunterfahren. Das soll automatisch geschehen. Wie mache ich das am besten?

Benutzeravatar
Moderator
Beiträge: 14657
Registriert: 09.08.2003, 05:41
Wohnort: sauerland
Kontaktdaten:

Beitragvon continuum » 09.02.2010, 15:46

du koenntest im Gast eine batch schreiben die ein remote-shutdown des Hosts ausfuehrt.

Wenn das timeout hoch genug ist kannst du die batch vor dem Runterfahren des gasts ausfuehren lassen.


Plan B: ein autoit-script auf dem Host laufen lassen, welches alle 60 sekunden checkt ob es einen Prozess namens vmware-vmx.exe gibt - gibt es keinen solchen Prozess mehr kann der Host runtergefahren werden.

Das ist mit ein paar Zeilen autoit erledigt

Member
Beiträge: 35
Registriert: 23.09.2008, 12:22

Beitragvon booty3009 » 09.02.2010, 15:55

Wie sieht das Script aus und wie erstelle ich es?
Danke!

Benutzeravatar
Moderator
Beiträge: 14657
Registriert: 09.08.2003, 05:41
Wohnort: sauerland
Kontaktdaten:

Beitragvon continuum » 09.02.2010, 16:22

so zum Beispiel:

Code: Alles auswählen

#include <Process.au3>

While 1
   $PID = ProcessExists("vmware-vmx.exe")   
   If not $PID Then MsgBox(4096, "automatic shutdown", "no VMs running - bye")
   If not $PID Then Shutdown(1)   
   Sleep(5000)
WEnd


Wenn du es kompiliert haben willst sag Bescheid - aber manche Virenscanner werden ueber so etwas meckern ...

Member
Beiträge: 35
Registriert: 23.09.2008, 12:22

Beitragvon booty3009 » 11.02.2010, 09:50

Danke für den Code!
Ich habe in Visual Basic selber ein Programm geschrieben. Dieses startet die VM mit dem VMware Player. Wenn die VM herunterfährt schließt sich anschließend automatisch der Player. Danach fährt der Host dann auch herunter. Das funktioniert super!

Danke nochmal!

Jenseits von Gut & Böse
Beiträge: 10837
Registriert: 02.08.2008, 15:06
Wohnort: Hannover/Wuerzburg
Kontaktdaten:

Beitragvon irix » 11.02.2010, 09:58

Dann poste doch einfach dein Script hier wenn du magst, weil dann koennen sich anderen mitfreuen.

Gruss
Joerg

Member
Beiträge: 35
Registriert: 23.09.2008, 12:22

Beitragvon booty3009 » 11.02.2010, 10:50

Code: Alles auswählen

Module Module1

    Sub Main()
           Misc.InitSystem("test", "VMControlhost")   
           Dim timeout As Integer = Misc.ReadApplicationConfig("TimeOut", 5)
           
           Dim vmpfad As String = Misc.ReadApplicationConfig
           ("VMPfad", "C:\Programme\vmware\vmware workstation\vmplayer.exe")

           Dim vmstartoption As String = Misc.ReadApplicationConfig("VMStartOption", "-X
           -K ""D:\test.vmx""")

       Try
            Dim p As System.Diagnostics.Process
            p = System.Diagnostics.Process.Start(vmpfad, vmstartoption)
            p.WaitForExit()
            Logging.inf("Prozess wurde mit Wert " & p.ExitCode & " beendet")
        Catch ex As Exception
            Logging.err(ex)
            Logging.inf("VMWare-Datei nicht gefunden")
        End Try
        System.Diagnostics.Process.Start("shutdown", "-s -f -t " & timeout)
    End Sub

End Module


Mit Microsoft Visual Basic 2005 Express Edition erstellt. Erfordert DotNet 2.0!
Für die Erstellung des Programms benötigt man auch noch eine dll Datei. Diese dll Datei erstellt dann den Pfad test\VMcontrolhost. Dort kann man das Timeout und den Pfad der VM ändern. Das Programm würde auch für andere Programme gehen! Logging und Misc stammt aus der englefield.dll (http://www.englefield.de)!


Zurück zu „VMware Player“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast