Programmstart überwachen
Betrifft: Programmstart überwachen
von: Dieter
Geschrieben am: 19.09.2004 21:55:02
Hallo Excellenzen,
kann man mit VBA den Start eines beliebigen Programms überwachen?
Ich meine, wenn jemand z.B. Word startet, dass dann eine Meldungsbox
erscheint und falls ja, wie geht das?
Grüße Dieter
Betrifft: AW: Programmstart überwachen
von: K.Rola
Geschrieben am: 19.09.2004 22:50:11
Hallo,
falls du auf deinem PC WMI installiert hast, gehts damit relativ einfach.
Allerdings jedes beliebige Programm ist schwierig, besser, du könntest das
einschränken, sehe den Sinn auch nicht so recht.
Auf jeden Fall ist es für deine VBA-Kenntnisse schon eine Herausforderung,
falls dann etwas nicht gleich klappt.
Es geht aber auch ohne WMI. Falls du ein beispiel möchtest, nochmal melden.
Gruß K.Rola
Betrifft: AW: Programmstart überwachen
von: Thomas Risi
Geschrieben am: 19.09.2004 22:54:28
Hallo Dieter,
ich würde mir wohl einen Service programmieren ;)
Aber es wird wohl auch mit einer Lowlevel-Lösung funzen. Nimm einen Timer der eine Object-Variable überwacht.
Ein Beispiel ...
Option Explicit
Dim wrd As Object
Private Sub TimerControl1_OnTime()
On Error Resume Next
Set wrd = Nothing
Set wrd = GetObject(, "word.application")
If Not wrd Is Nothing Then
[A1] = "Word wurde gestartet ..."
Else
[A1] = "Word ist geschlossen ..."
End If
End Sub
Sub start()
Range("A1").Clear
TimerControl1.start
End Sub
Sub deactivate()
TimerControl1.deactivate
End Sub
Code eingefügt mit
Syntaxhighlighter 3.0
Gruß
Thomas
Risi Thomas Softwareentwicklung
Betrifft: AW: Programmstart überwachen
von: Frank
Geschrieben am: 19.09.2004 22:59:01
Hallo Thomas;
"Lowlevel-Lösung" ist für mich ein Böhmisches Dorf. Beachte bitte meinen VBA-Level.
Woher nehme ich einen Timer?
Grüße Frank
Betrifft: AW: Programmstart überwachen
von: Thomas Risi
Geschrieben am: 19.09.2004 23:13:54
Wie jetzt, Dieter oder Frank?
Das TimerControl gibt's auf meiner Webseite. Du kannst aber auch die OnTime-Methode von Excel verwenden. Beispiele hierzu gibt's vermutlich genug in der Recherche. Es muß nur dieser Code (bzgl. Word) ablaufen.
On Error Resume Next
Set wrd = Nothing
Set wrd = GetObject(, "word.application")
If Not wrd Is Nothing Then
[A1] = "Word wurde gestartet ..."
Else
[A1] = "Word ist geschlossen ..."
End If
Code eingefügt mit
Syntaxhighlighter 3.0
Gruß
Thomas
Risi Thomas Softwareentwicklung
Betrifft: AW: Programmstart überwachen
von: Frank
Geschrieben am: 19.09.2004 23:20:59
Hallo Thomas,
ich hab mich da einfach reingehägt, da mich das auch interessiert.
Danke für die Hinweise.
Grüße Frank