.
.
.
.
.
.

Auftragsprogrammierung

Projektanfrage über Web Formular   per Online-Formular 
Projektanfrage über E-Mail  Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein!
Projektanfrage per Telefon  +49 (0)151 / 164 55 914
Projektanfrage weitere Informationen  weitere Informationen 

Sie benötigen Hilfe oder Unterstützung? Nutzen Sie für Ihre Anfrage unser Online-Formular, senden Sie uns eine Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein!  oder rufen Sie uns einfach an.

Für kurze Fragen und einfachere Problemlösungen bieten wir unseren Quick-Support an.

Referenzen

 Bosch 
  T-Systems
  Hagebau
  Siemens
 Areva  VW
 Haufe-Lexware  British American Tobacco
  nagel group farbe
 

Windows-Prozesse auslesen und beenden

Per VBA lassen sich sämtliche laufenden Windows-Prozesse auslesen und gezielt beenden. 

Der folgende VBA-Code liest alle Windows-Prozesse aus und trägt diese in Spalte A ab Zeile 1 nacheinander in das aktuelle Tabellenblatt ein. Es werden sowohl alle internen Systemprozesse ausgelesen, als auch die Prozesse der ausgeführten Anwendungsprogramme.

Erfassen Sie dazu den VBA-Code in einem Code-Modul.

Sub Prozesse_auflisten()
'** Alle Prozesse ab Zelle A1 auflisten
'** Vorgaben definieren
Set objWindowsService = GetObject("winmgmts:" _
 & "{impersonationLevel=impersonate}!\\.\root\cimv2")
 
'** Abfrage der aktiven Prozesse
Set colProcessList = objWindowsService.ExecQuery _
 ("SELECT * FROM Win32_Process")
 
'** Selektierte Prozessliste durchlaufen
For Each objProcess In colProcessList
 a = a + 1 'Zeilenzähler
 Cells(a, 1).Value = objProcess.Name 'Ausgabe
Next objProcess
End Sub

 

Wenn Sie einen einzelnen Windows-Prozess beenden möchten, müssen Sie den Namen des Windows-Prozesses kennen. Diesen erhalten Sie über die vorgenannte Prozedur.

Mit folgendem Code wird ein Windows-Prozess, z. B. ein Anwendungsprogramm gezielt beendet.

Sub Windowsprozess_beenden()
'** Definierten Prozess beenden
'** Vorgaben definieren
Set objWindowsService = GetObject("winmgmts:" _
 & "{impersonationLevel=impersonate}!\\.\root\cimv2")
 
'** Abfrage der aktiven Prozesse
Set ProcessList = objWindowsService.ExecQuery _
 ("SELECT * FROM Win32_Process WHERE Name = 'winword.exe'")
'** Selektierte Prozessliste durchlaufen
For Each objProcess In ProcessList
 objProcess.Terminate 'Prozess beenden
Next objProcess
End Sub

Im  Beispiel wird Microsoft Word über den Prozessnamen "winword.exe" beendet, siehe Zeile 9 des VBA-Codes:

Set ProcessList = objWindowsService.ExecQuery _
("SELECT * FROM Win32_Process WHERE Name = 'winword.exe'")

Wenn Sie einen anderen Prozess beenden möchten, dann ändern Sie den im Beispiel verwenden Prozess-Namen 'winword.exe' entsprechend.

Achtung:

Mit Hilfe dieser Prozedur lassen sich auch Systemprozesse beenden, wodurch es sogar zu Abstürzen des Betriebssystems kommen kann. Achten Sie also bitte darauf, dass Sie nur Prozesse beenden, von denen Sie auch wissen, mit welche Auswirkungen zu rechnen ist.

Drucken E-Mail

Relevante Artikel

  • Gruppieren und Filtern trotz Blattschutz

    Sobald der Blattschutz aktiviert ist, gibt es keine Möglichkeit mehr, die Gruppierungsfunktion bzw. die Autofilterfunktion über Excel-Standards zu...

  • XML Datei per VBA erzeugen

    In diesem Beispiel zeigen wir Ihnen, wie XML Dateien per VBA erzeugt werden können. Als Ausgangsdatei dient eine kleine Adressliste, die als...

  • UserName ermitteln

    Dieses Makro liest den UserName (Benutzernamen) des eingeloggten Benutzers aus. Dies ist für Dateien/Programme interessant, die nur für bestimmte...

  • Fortschrittsbalken in Statusleiste anzeigen

    Wenn es mal wieder etwas länger dauert, ist es sinnvoll, wenn der Anwender darüber informiert wird. Dies kann beispielsweise über eine kleine...

  • Zellinformationen per Funktion auslesen

    Diese Funktion liest verschiedene Zellinformationen aus und zeigt diese an. Erfassen Sie den Code in einem Code-Modul {code} Public Function zellinfo(zelle As Range, i As Integer)...

Projektanfrage

 Sie benötigen eine Auftragsprogrammierung?
 Oder suchen Unterstützung bei der 
 Lösungsfindung?

  Nutzen Sie unser Anfrageformular

  Jetzt anrufen unter 0151 / 164 55 914

 Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein! Projektanfrage per Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein! senden

  Weitere Informationen

sitepanel question2

P
R
O
J
E
K
T
A
N
F
R
A
G
E
Ihre Zufriedenheit ist unser Ziel, deshalb verwenden wir Cookies. Mit diesen ermöglichen wir, dass unsere Webseite zuverlässig und sicher läuft, wir die Performance im Blick behalten und Sie besser ansprechen können. Cookies werden benötigt, damit technisch alles funktioniert und Sie auch externe Inhalte lesen können. Des Weiteren sammeln wir unter anderem Daten über aufgerufene Seiten, getätigte Käufe oder geklickte Buttons, um so unser Angebot an Sie zu Verbessern. Mehr über unsere verwendeten Dienste erfahren Sie unter „Weitere Informationen“. Mit Klick auf „Akzeptieren“ erklären Sie sich mit der Verwendung dieser Dienste einverstanden. Ihre Einwilligung können Sie jederzeit mit Wirkung auf die Zukunft widerrufen oder ändern.