Présence d'une application sur la machine

cs_Lolux Messages postés 159 Date d'inscription mardi 18 décembre 2001 Statut Membre Dernière intervention 15 septembre 2005 - 10 avril 2003 à 13:07
andlah Messages postés 28 Date d'inscription samedi 31 mai 2003 Statut Membre Dernière intervention 16 juin 2008 - 16 avril 2004 à 16:37
Bonjour à tous,

Je cherche à savoir comment détecter la présence d'une application sur une machine. Je ne souhaite pas aller chercher dans le registre ar je ne suis pas certain de l'emplacement suivant les versions du logiciel ou même du système d'exploitation...
La fonction dir() ne me conviens pas non plus pour des raison similaires.

Avez vous une idée pour lister les applications, comme le ait par exemple windows dans l'outil installer/desinstaller des logiciels.

Je n'ai rien trouvé par moi même jusqu'à présent, et c'est pourquoi je fais appel à vous.

Merci pour vos réponses

A plouch,

Lolux

2 réponses

andlah Messages postés 28 Date d'inscription samedi 31 mai 2003 Statut Membre Dernière intervention 16 juin 2008
16 avril 2004 à 16:36
PRend la propriété FileSystemWatcher bien décrit dans le MSDN
0
andlah Messages postés 28 Date d'inscription samedi 31 mai 2003 Statut Membre Dernière intervention 16 juin 2008
16 avril 2004 à 16:37
Private Sub btn_startwatch_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_startwatch.Click
Try
watchfolder = New System.IO.FileSystemWatcher

'Chemin que je veux surveiller
watchfolder.Path = txt_watchpath.Text

'Spécifier les filtres
'Faut spécifier toutes les filtres nécessaires

watchfolder.NotifyFilter = IO.NotifyFilters.DirectoryName
watchfolder.NotifyFilter = watchfolder.NotifyFilter Or _
IO.NotifyFilters.FileName
watchfolder.NotifyFilter = watchfolder.NotifyFilter Or _
IO.NotifyFilters.Attributes

' Ajoute un handler à chaque évenements
AddHandler watchfolder.Changed, AddressOf logchange
AddHandler watchfolder.Created, AddressOf logchange
AddHandler watchfolder.Deleted, AddressOf logchange

'Ajoute l'évenement Renommer pour la signature différente
AddHandler watchfolder.Renamed, AddressOf logrename

'Démarrage de la surveillance
watchfolder.EnableRaisingEvents = True

btn_startwatch.Enabled = False
btn_stop.Enabled = True
Catch
MsgBox("Vous n'avez pas spécifié de répertoire à surveiller!!!", MsgBoxStyle.Information.Information)
End Try
End Sub

Private Sub logchange(ByVal source As Object, ByVal e As _
System.IO.FileSystemEventArgs)

If e.ChangeType = IO.WatcherChangeTypes.Changed Then
txt_folderactivity.Text = ""
txt_folderactivity.Text &= "Le fichier---> " & e.FullPath & _
" a été modifié le " & Now & " par " & Environment.UserDomainName & vbCrLf
SaveDerniereActivite()

End If

If e.ChangeType = IO.WatcherChangeTypes.Created Then
txt_folderactivity.Text = ""
txt_folderactivity.Text &= "Le fichier---> " & e.FullPath & _
" a été créé le " & Now & vbCrLf
End If

If e.ChangeType = IO.WatcherChangeTypes.Deleted Then
txt_folderactivity.Text = ""
txt_folderactivity.Text &= "Le fichier---> " & e.FullPath & _
" a été supprimé le " & Now & vbCrLf
End If


End Sub

Public Sub logrename(ByVal source As Object, ByVal e As _
System.IO.RenamedEventArgs)
txt_folderactivity.Text &= "Le fichier--->" & e.OldName & _
" à été renommé pour ---> " & e.Name & " le " & Now & vbCrLf
End Sub

Private Sub btn_stop_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_stop.Click
' Arreter de surveiller
Try
watchfolder.EnableRaisingEvents = False
btn_startwatch.Enabled = True
btn_stop.Enabled = False
Catch
MsgBox("Je ne peut pas arrêter si je n'ai pas démarré!!!!!", MsgBoxStyle.Critical.Critical)
End Try

End Sub
0
Rejoignez-nous