Base de registre : chercher le dossier d'installation d'un soft

Signaler
-
Messages postés
34
Date d'inscription
samedi 18 juin 2016
Statut
Membre
Dernière intervention
20 octobre 2017
-
Bonjour à toutes et tous,
Je cherche à récupérer le chemin du répertoire d'installation d'Excel.

Je voudrais faire cela à partir de la base de registre, et cela indépendamment de :
  • la version d'Excel
  • le répertoire d'installation (par défaut ou non)
  • la version (32 ou 64 bits)
  • la version de Windows


J'ai fait un certain nombre de recherches et pour le moment aucune n'est fiable à 100% en étant utilisable dans tous les cas de figure.

Si quelqu'un a la réponse à mon problème, merci de me donner des pistes de recherche et/ou la solution.

Par avance merci

Olivier

6 réponses

Messages postés
15928
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
13 mai 2021
544
Bonjour

quelque soit la version (enfin pour celles que je connais), l'exécutable s'appelle toujours excel.exe.

Une recherche sur le disque dur ne te conviendrait pas?
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
236
Bonjour,
Il s'agit là de la valeur inscrite dans la clé suivante de la base de registre :
HKEY_CLASSES_ROOT\.htm\OpenWithList\Excel.exe\shell\edit\command
on la trouve également dans cette clé :
HKEY_CLASSES_ROOT\.htm\OpenWithList\Microsoft Office Excel\shell\edit\command

L'une comme l'autre ont une valeur de type (ici sur ma machine)
"C:\Program Files\Microsoft Office\Office12\EXCEL.EXE" /e
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
236
Ceci étant dit, je n'irais personnellement pas par 4 chemins et créerais un objet Excel en liaison tardive, puis en examinerais ce dont j'ai besoin.
Voici ce que je ferais sous VB6 et qui devrait être quasi identique sous VB.Net :l

  Dim o As Object
Set o = CreateObject("Excel.application")
MsgBox "Bonjour. L'application Microsoft Excel est intallée en " & o.Path & vbCrLf & _
"sa version est " & o.Version & " et elle tourne sur " & o.OperatingSystem & "!"
Set o = Nothing


Voici ce que ce code tout bête retourne sur ma machine :

Bonjour. L'application Microsoft Excel est intallée en C:\Program Files\Microsoft Office\Office12
sa version est 12.0 et elle tourne sur Windows (32-bit) NT 5.01!


Tu dois bien évidemment y ajouter une gestion d'erreur éventuelle (cas d'absence de Excel sur la machine).

________________________
Nul ne saurait valablement coder ce qu'il ne saurait exposer clairement.
Messages postés
7377
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
12 mai 2021
122
Bonjour,

Pour mettre le code de ucfoutu que je salue, en VB.Net:

Imports Microsoft.Win32
Public Class Form1
    Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
        Dim rk As RegistryKey = Registry.LocalMachine.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\excel.exe")
        Dim excelPath As String = CStr(rk.GetValue("Path"))
        MessageBox.Show("Bonjour, l'application Microsoft Excel est installée en: " & excelPath, "Emplacement Excel", MessageBoxButtons.OK, MessageBoxIcon.Information)
    End Sub
End Class
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
236
Bonjour, Le Pivert,
Je me méfie toujours des fausses désinstallations (suppression de répertoires) qui, elles, ne suppriment pas la clé dans la base de registre et faussent donc de telles vérifications.
C'est là la raison pour laquelle j'ai proposé la 2ème solution.
Messages postés
2427
Date d'inscription
samedi 11 janvier 2014
Statut
Contributeur
Dernière intervention
6 mai 2021
137
bonjour à tous
fonctionne nickel sous Windows 10 Pro 64 bits avec Office 2016
Messages postés
34
Date d'inscription
samedi 18 juin 2016
Statut
Membre
Dernière intervention
20 octobre 2017

Bonjour,

regarde aussi Ordinateur\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
Se sont tes application instaler sur ton ordinateur.

Ordinateur\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Uninstall
Por les application instaler par l'utilisateur.

Il donne plein d'info( emplacement du patch, nom, version, date, ...)

@wmade
http://codes-sources.commentcamarche.net/profile/user/wmade
Messages postés
15928
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
13 mai 2021
544
En 1 an, il n'a jamais répondu du à aucune intervention sur ce fil, était ce bien utile de l'exhumer?
Messages postés
34
Date d'inscription
samedi 18 juin 2016
Statut
Membre
Dernière intervention
20 octobre 2017

oui
cela pourra aider les autres, pour ne pas reposer la même question. moi même j'ai cherchée à l'époque assez longtemps.