Controleren of een programma geinstaleerd is

  • Onderwerp starter Onderwerp starter bn2vs
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

bn2vs

Terugkerende gebruiker
Lid geworden
18 aug 2007
Berichten
1.705
Hey,

Ik wil controleren of een bepaald programma geinstaleerd is in een vb.net app (de locatie kan versschillen). Iemand een suggestie hoe ik dit doe?

Cheers
BN
 
zoeken in het register, want alle geïnstalleerde programma's krijgen daar een plaatsje toegewezen!
 
Easy :P

Code:
Private Function getAllPrograms() As List(Of String)
        Dim lijst As List(Of String) = New List(Of String)
        Dim software_key As Microsoft.Win32.RegistryKey = Microsoft.Win32.Registry.LocalMachine.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall")

        For Each key As String In software_key.GetSubKeyNames()           
            Dim current_key As Microsoft.Win32.RegistryKey = software_key.OpenSubKey(key)

            Try
                If (Not current_key.GetValue("DisplayName").ToString().Trim() = "") Then
                    lijst.Add(current_key.GetValue("DisplayName") + " " + current_key.GetValue("DisplayVersion"))
                End If
            Catch ex As Exception

            End Try
        Next

        Return lijst
    End Function

Je moet enkel nog die lijst doorzoeken!
 
Euhm - dat is in elk geval het dichtste dat ik al bij de oplossing ben geweest, maar die reg key bevat niet voor elke app die geinstalled is een subkey. (zie screenshot (licht aangepaste versie van jouw code))

Als ik Configuratiescherm\Programma's en onderdelen open staat er toch net ff iets meer, en die lijst wil ik hebben.

Bedankt voor de help zover :)
 

Bijlagen

  • Clipboard01.gif
    Clipboard01.gif
    55,9 KB · Weergaven: 46
Ik heb dat bekeken en ik moet zeggen dat die code nog meer entries bevat dan hetgeen in configuratiescherm.
Eveneens staat alles in die code ook in het configuratiescherm en omgekeerd.

Dat is logisch, vermits configuratiescherm zijn informatie haalt waar die code dat doet ... :confused:

Kan je anders eens een voorbeeld (screenshot) geven van tekorte entries?
 
Ik heb dit probleem een tijdje gelden ook op een ander forums gezet, en daar heeft iemand mij ongeveer dezelfde oplossing gegeven, en die zij hetzelfde, maar het komt echt niet overeen hoor (tenzij ik echt niet goed zie :p)

check screenshot maar, zijn genoeg apps die niet in de vorige staan...
 

Bijlagen

  • Clipboard01.jpg
    Clipboard01.jpg
    97,6 KB · Weergaven: 30
run eens deze applicatie (maak je geen zorgen, het is geen virus, ik heb interessantere dingen te doen) en vergelijk dan eens wat er met het configscherm je weet te tonen.

Bij mij werkt dat perfect :thumb:
 

Bijlagen

Hey,

Dat geeft mij hetzelfde als met jouw code - er mist echt een heel deel :(
gwn een paar voorbeelden: firefox, chrome, µtorrent,...

Cheers
BN
 
Maar ... staat het programma dat je zoekt in die lijst?
Dat lijkt mij toch het belangrijkste, niet?
 
dan installeerd warned misschien alles voor "All users"
je zult ook nog de uninstall onder USERS/<UID> en of HKCU erbij moeten pakken je kijkt nu alleen in local machine
Dan krijg je een stuk completer beeld.
Je bent natuurlijk afhankelijk van de bouwer van het pakket of die een goeie install/uninstall procedure heeft gemaakt
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan