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
GELÖST

VBS Prozess anhand Fenstername beenden

Frage Entwicklung Batch & Shell

Mitglied: goodbytes

goodbytes (Level 2) - Jetzt verbinden

08.12.2014, aktualisiert 15:40 Uhr, 1624 Aufrufe, 5 Kommentare

Hallo,
wie kann ich eine Batch mittels vbs anhand des Fenstertitels beenden? Die cmd.exe zeigt als Fenstertitel an: "Administrator: Test", da ich in der Batch "Title Test" verwendet habe.

Gruß
Torsten
Mitglied: emeriks
LÖSUNG 08.12.2014, aktualisiert um 15:40 Uhr
Hi,
Du könntest über WMI die Befehlszeilen der laufenden Prozesse abfragen und dann den entsprechenden Prozess beenden.
01.
Set oWMI = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\CIMV2")  
02.
Set oProcesses = oWMI.ExecQuery("SELECT * FROM Win32_Process WHERE Name = 'cmd.exe'",,48)  
03.
For Each oProcess in oProcesses  
04.
  if instr(oProcess.CommandLine, {Pfad zur Batch}) > 0 then 
05.
    oProcess.Terminate 
06.
  end if  
07.
Next
E.
Bitte warten ..
Mitglied: 114757
08.12.2014 um 12:05 Uhr
Moin Torsten,
würde die Methode von Emeriks auch bevorzugen. Hier aber noch ein "dirty"-Trick wenn Word installiert ist und tatsächlich der Fenster-Titel verwendet werden soll. Ich weiß das das nicht universell ist, aber eben einfach noch eine Möglichkeit.
01.
Const APP_TITLE = "Administrator: Test" 
02.
Set objWord = CreateObject("Word.Application") 
03.
objWord.Visible = False 
04.
Set tasks = objWord.Tasks 
05.
If tasks.Exists(APP_TITLE) Then 
06.
    tasks(APP_TITLE).Close 
07.
End If 
08.
objWord.Quit()
Gruß jodel32
Bitte warten ..
Mitglied: goodbytes
08.12.2014 um 15:36 Uhr
@emeriks
Ja,so bekomme ich alle Prozesse mit "cmd.exe", aber ich möchte nur einen davon killen. Ich müsste doch mittels WMI auch irgendwie an den Fenstertitel kommen denke ich, oder?

@114757
Word ist leider nicht installiert, da es sich um einen Server handelt, da brauche ich sonst kein Word...
Trotzdem danke!

Torsten
Bitte warten ..
Mitglied: goodbytes
08.12.2014 um 15:39 Uhr
Nachtrag...
@emeriks
Aaaaaach sooooo, da hab ich jetzt aber nicht richtig hingeguckt. Natürlich, indem ich nach dem Pfad zu der gestarteten Batch filtere! Menno, manchmal sollte man erstmal richtig lesen..

Vielen Dank!!!
Torsten
Bitte warten ..
Mitglied: goodbytes
09.12.2014 um 12:37 Uhr
So funktioniert es jetzt bestens...
01.
Set WMI = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2") 
02.
Set objProzesse = WMI.ExecQuery("Select * from Win32_Process") 
03.
 
04.
For Each objProzess in objProzesse 
05.
		 
06.
  If instr(objProzess.CommandLine, "Testbatch.cmd") Then  
07.
	objProzess.Terminate (0)  
08.
  End If  
09.
Next
Danke nochmal !!!

Torsten
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Cpl Dateien per Batch oder VBS öffnen (1)

Frage von Angelo131095 zum Thema Batch & Shell ...

VB for Applications
gelöst VBS Ordner erstellen - wenn nicht vorhanden! (1)

Frage von freshman2017 zum Thema VB for Applications ...

VB for Applications
gelöst VBS Datei Auswahl Dialog (5)

Frage von Compu2017 zum Thema VB for Applications ...

VB for Applications
gelöst VBS Suchen und Ersetzen bei UTF8 XML Dateien funktioniert nicht (7)

Frage von Nexxudus zum Thema VB for Applications ...

Neue Wissensbeiträge
Tipps & Tricks

Wie Hackt man sich am besten in ein Computernetzwerk ein

(38)

Erfahrungsbericht von Herbrich19 zum Thema Tipps & Tricks ...

Humor (lol)

Bester Vorschlag eines Supporttechnikers ever: APC

(15)

Erfahrungsbericht von DerWoWusste zum Thema Humor (lol) ...

Heiß diskutierte Inhalte
Webbrowser
Windows 7 unbeliebte Internetseite sperren (15)

Frage von Daoudi1973 zum Thema Webbrowser ...

ISDN & Analoganschlüsse
gelöst Splitter - RJ45 zu RJ11? (13)

Frage von Waishon zum Thema ISDN & Analoganschlüsse ...

LAN, WAN, Wireless
gelöst Suche Firmware Image für Cisco Aironet 1252 (10)

Frage von Herbrich19 zum Thema LAN, WAN, Wireless ...

Netzwerke
VLAN Verständnissproblem (9)

Frage von Dragan123 zum Thema Netzwerke ...