Comment faire un monitoring du registre (exemple : monitorer la création/destruction des services)

Description

Bonjour à tous,

voilà un code assez court pour permettre de monitorer le registre, c'est à dire détecter les modifications apportées au registre.

La méthode utilisée est assez simple (à base d'API windows (CreateEvent) et de multithreading).

Bon, rien de plus à dire si ce n'est que je l'ai fait à la va vite quand même :-)

Au fait, la liste des services ne sert vraiment à rien !

Source / Exemple :


' Create monitoring for services
cReg = New cRegMonitor(cRegMonitor.KEY_TYPE.HKEY_LOCAL_MACHINE, SERVICE_REG_PATH, _
        cRegMonitor.KEY_MONITORING_TYPE.REG_NOTIFY_CHANGE_NAME)

' Events of my class
Private Sub keyAdded(ByVal k As cRegMonitor.KeyDefinition) Handles cReg.KeyAdded
    news(k.name)
End Sub

Private Sub keyDeleted(ByVal k As cRegMonitor.KeyDefinition) Handles cReg.KeyDeleted
    dels(k.name)
End Sub

Conclusion :


Comment tester ? Démarrer un programme qui créé/supprime dynamiquement un service à son chargement/déchargement.

Ou bien simuler la création d'une clé dans le registre : HKLM\SYSTEM\CurrentControlSet\Services (ajouter une sous clé).

Bon ne me parlez pas de Timers pour checker le registre à intervalle de temps régulier, c'est une méthode vraiment nulle, tout l'intérêt de cette source est de ne pas procéder ainsi.

@+

Codes Sources

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.