Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

VB Script zur Statusabfrage eines hochfahrenden PCs

Frage Entwicklung VB for Applications

Mitglied: cbli

cbli (Level 1) - Jetzt verbinden

12.11.2010 um 16:24 Uhr, 3551 Aufrufe, 2 Kommentare

Grundsätzliches:

Mein Vater möchte von zu Hause per VPN und Remote Desktop auf seinen PC in der Firma zugreifen. Dieses habe ich mit einem VB Script realisiert.
Der PC zuhause und in der Firma haben Windows XP Prof. mit SP3 installiert.


Was bereits funktioniert:

Das Script stellt automatisch die VPN Verbindung her,fährt den PC in der Firma per Wake on Lan hoch und startet dann automatisch Remote Desktop.
Er kann sich dann anmelden und später trennt das Script die Verbindung und fährt auch vorher auf Wunsch den PC in der Firma herunter.


Was nicht funktioniert:
Obiges funktioniert nur wenn der PC in der Firma bereits hochgefahren ist. Wird er erst mit Hilfe des Scripts hochgefahren (was funktioniert) ,kommt gleich der
Remote Desktop Befehl,der natürlich fehlschlägt weil der PC in der kurzen Zeit noch nicht hochgefahren ist.
Ich habe mir seither mit dem WScript.Sleep Befehl geholfen,aber ich möchte es eigentlich so lösen,daß irgendwie der "Hochfahrstatus" des Remote PC´s abgefragt wird.
Erst wenn der Remote PC bis zum Anmeldebildschirm hochgefahren ist ,soll das Script den Remote Desktop Befehl starten.

Lässt sich das irgendwie realisieren ?

Hier noch mein momentanes Script:

Dim rdpdatei
rdpdatei = "192.168.115.93"
msgbox "Es wird nun die VPN Verbindung hergestellt",64,"Hinweis"
Set WSHShell = CreateObject("WScript.Shell")


' VPN Verbindung herstellen
wshshell.run "rasphone -d VPN-Office",,true


' Ping Befehl
strComputer = "Rolf"

Set objPing = GetObject("winmgmts:{impersonationLevel=impersonate}")._
ExecQuery("select * from Win32_PingStatus where address = '"_
& strComputer & "'")
For Each objStatus in objPing
If IsNull(objStatus.StatusCode) Or objStatus.StatusCode <> 0 Then
WScript.Echo "PC " & strComputer & " ist nicht online." & vbcrlf & vbcrlf & "Der PC wird jetzt gestartet....." & vbcrlf & vbcrlf & "Bitte etwas Geduld - Remote Desktop startet automatisch sobald der PC hochgefahren ist"


' Externes WOL Programm mit MAC Adresse starten
wshshell.run "d:\mc-wol (MAC) /a (Broadcast IP)", 1, true ' Rolf MaC


else
msgbox "PC ist bereits Online !!",64,"Hinweis"
End If
Next

' Remote Desktop wird gestartet
wshshell.run "%systemroot%\system32\mstsc.exe /console /w:1280 /h:1024 /V:" & rdpdatei

' Schleife die auf Beendigung des MSTSC Prozesses abfragt
Do

strComputer = "."
strProcess = "mstsc.exe"
strProgPath = "%SystemRoot%\system32\mstsc.exe"

Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colProcesses = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = '" & strProcess & "'")

Loop until colProcesses.Count = 0 ' Prozess läuft nicht mehr - Schleifenabruch


' Vebindung trennen und Remote PC herunterfahren
value = msgbox ("Soll der PC im Büro heruntergefahren werden, bevor die Verbindung getrennt wird ?",32 + vbYesNo,"Frage")

if value = vbyes then

Dim objShell, strComputer, strInput
Dim strShutdown
strComputer = "Rolf"

strShutdown = "shutdown -s -t 0 -f -m \\" & strComputer
set objShell = CreateObject("WScript.Shell")
objShell.Run strShutdown


msgbox "Verbindung wird jetzt getrennt",64,"Hinweis"
wshshell.run "rasphone -h VPN-Office"

end if

if value = vbno then
msgbox "Verbindung wird jetzt getrennt",64,"Hinweis"
wshshell.run "rasphone -h VPN-Office"
end if
Mitglied: ShitzOvran
12.11.2010 um 16:50 Uhr
und was ist, wenn du den rechner einfach solange anpingst, bis er eine erfolgreiche rückmeldung gibt... dann weißt du er ist bereit, und führt das screipt weiter aus
Bitte warten ..
Mitglied: cbli
12.11.2010 um 16:53 Uhr
Funktioniert nicht,da der Rechner ja schon kurz nach dem Einschalten auf den Ping Befehl reagiert,also lange bevor das OS hochgefahren ist.
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Outlook & Mail
gelöst Email Anhänge speichern VB Script aber nur bestimmte Dateitypen (Outlook) (4)

Frage von LindeUnimog zum Thema Outlook & Mail ...

Windows 10
gelöst Treiber unter Windows (7,8,10) per Script auf Remote-PCs updaten (4)

Frage von MrCount zum Thema Windows 10 ...

VB for Applications
gelöst VB Script rekursiv statt nur ein Ordner (4)

Frage von Saschaaaaa zum Thema VB for Applications ...

VB for Applications
gelöst VB Script nach gefundenem Wort die nächsten 4 Zeichen ersetzten (2)

Frage von deutsch73 zum Thema VB for Applications ...

Heiß diskutierte Inhalte
Router & Routing
gelöst Ipv4 mieten (22)

Frage von homermg zum Thema Router & Routing ...

Windows Server
DHCP Server switchen (20)

Frage von M.Marz zum Thema Windows Server ...

Exchange Server
gelöst Exchange 2010 Berechtigungen wiederherstellen (20)

Frage von semperf1delis zum Thema Exchange Server ...

Hardware
gelöst Negative Erfahrungen LAN-Karten (19)

Frage von MegaGiga zum Thema Hardware ...