mon application a besoin de savoir si une application est installe ou non sur la machine, je n'ai aucune idee quel classe du framework s'occupe de cela...
mercie bien :-)
mon application a besoin de savoir si une application est installe ou non sur la machine, je n'ai aucune idee quel classe du framework s'occupe de cela...
mercie bien :-)
Tu n'as qu'à utiliser le registre de Windows avec la classe RegistryKey.
Voici un bout de code qui te permettra de récupérer la liste des programmes installés sur la machine (n'oublie pas de donner les droits au registre à ton application):
Ps: sans oublier la source ^^
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 RegistryKey mesCles = Registry.LocalMachine.OpenSubKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall", true); foreach (string str in mesCles.GetSubKeyNames()) { Console.WriteLine(str); }
http://www.dotnet-project.com/Astuce...talles.39.aspx
Voila, le programme que je veux detecter est Microsoft ActiveSync, et obtenir son chemin d'installation, donc j'ai fait:
Code C# : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 RegistryKey mesCles = Registry.LocalMachine.OpenSubKey("HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows CE Services", false); foreach (string str in mesCles.GetSubKeyNames()) { Console.WriteLine(str); } Console.ReadKey();
mais la methode Registry.LocalMachine.OpenSubKey me retoure un null.
donc je pense que c'est une histoire de droit d'acces.ce dont je n'ai rien compris a comment ca marche
EDIT: Ah non ca marche desole! (fallait pas inclure HKEY_LOCAL_MACHINE dans le parametre)
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager