Ich möchte einen Registry-Key bzw. Key.Value überwachen.
Meines Erachtens ist der Code richtig, funktioniert bei mir aber nicht wie gewünscht, ich befürchte mein System ist etwas angeschlagen.
Also bitte ich darum, die TestSolution (Anhang) auszuprobieren und mir feedback zukommen zu lassen.
Interessanterweise wird noch vor der Fehlermeldung das Stoped Event gefeuert.
Meines Erachtens ist der Code richtig, funktioniert bei mir aber nicht wie gewünscht, ich befürchte mein System ist etwas angeschlagen.
Also bitte ich darum, die TestSolution (Anhang) auszuprobieren und mir feedback zukommen zu lassen.
VB.NET-Quellcode
- Imports System.Management
- Public Class RegistryWatcher
- Public Watcher As ManagementEventWatcher
- Sub New()
- End Sub
- Public Sub New(ByVal hive As String, ByVal keyPath As String, ByVal Optional valueName As String = "")
- Try
- Dim query As New WqlEventQuery(
- $"SELECT * FROM RegistryValueChangeEvent WHERE Hive = '{hive}' AND KeyPath = '{keyPath}'" &
- If(valueName <> "", $"AND ValueName='{valueName}'", valueName))
- Watcher = New ManagementEventWatcher(query)
- AddHandler Watcher.EventArrived, AddressOf Watcher_EventArrived
- AddHandler Watcher.Stopped, AddressOf Watcher_Stopped
- Catch managementException As ManagementException
- Console.WriteLine($"Error: {managementException.Message}")
- End Try
- End Sub
- Public Sub Start()
- Try
- Watcher.Start()
- Console.WriteLine("Waiting for an event...")
- Catch managementException As ManagementException
- Console.WriteLine($"Error: {managementException.Message}")
- End Try
- End Sub
- Public Sub [Stop]()
- Watcher.Stop()
- End Sub
- Private Sub Watcher_EventArrived(sender As Object, e As EventArrivedEventArgs)
- Console.WriteLine("Received an event.")
- End Sub
- Private Sub Watcher_Stopped(sender As Object, e As EventArgs)
- Console.WriteLine("Stopped.")
- End Sub
- End Class
Console schrieb:
Ausnahme ausgelöst: "System.Management.ManagementException" in System.Management.dll
Error: Nicht analysierbare Abfrage.
Interessanterweise wird noch vor der Fehlermeldung das Stoped Event gefeuert.
bit.ly/DotNetSearch
Code Konverter:
Online: @ developerfusion.com, @ telerik.com
Offline stand alone: Convert .NET, C# to VB Converter
VS Extensions: Convert .NET (Based on .NET 4.5), Language Convert
Code Konverter:
Online: @ developerfusion.com, @ telerik.com
Offline stand alone: Convert .NET, C# to VB Converter
VS Extensions: Convert .NET (Based on .NET 4.5), Language Convert
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „FormFollowsFunction“ ()