none
Lancer .exe sans connaitre le répertoire ( résolu ) RRS feed

  • Question

  • Bonjour , j'aimerais pouvoir lancer un fichier .exe sans connaitre le répertoire

    Pourquoi ? Le fichier .exe sera en téléchargement pour des utilisateurs et ils le placeront ou ils le souhaite .

    Ceci marche ( normal ) : 

        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Shell("C:\Program Files (x86)\Diablo III\Diablo III Launcher.exe")
        End Sub

    Mais j'aimerais avoir quelque chose comme ceci :

        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            Shell("Diablo III Launcher.exe")
        End Sub
     
    • Modifié AKONIT mardi 30 juillet 2013 15:26
    mardi 30 juillet 2013 11:54

Réponses

  • Bonjour AKONIT,

    Tu peux essayer ceci :

        Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
            Const EXEName As String = "Diablo III Launcher.exe"
    
            ' Ils auraient pu écrire ici :
            ' "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\Diablo III Launcher.exe
            ' c'est plus "classique"
    
            ' Recherche chemin d'installation
            Dim DiabloIIIPath As String = My.Computer.Registry.GetValue("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Diablo III", _
                                                              "InstallLocation", Nothing)
    
            If Len(DiabloIIIPath) > 0 Then
                MessageBox.Show("Chemin complet = " & DiabloIIIPath & EXEName)
                Try
                    Shell(DiabloIIIPath & EXEName)
                Catch ex As Exception
                    MessageBox.Show("Erreur : " & ex.Message)
                End Try
            End If
        End Sub


    Cordialement, Jacques


    • Modifié Jacques93 mardi 30 juillet 2013 14:12 Supp Wow6432Node
    • Marqué comme réponse Aurel Bera lundi 5 août 2013 08:52
    mardi 30 juillet 2013 14:09

Toutes les réponses

  • Bonjour AKONIT,

    Tu peux essayer ceci :

        Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
            Const EXEName As String = "Diablo III Launcher.exe"
    
            ' Ils auraient pu écrire ici :
            ' "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\Diablo III Launcher.exe
            ' c'est plus "classique"
    
            ' Recherche chemin d'installation
            Dim DiabloIIIPath As String = My.Computer.Registry.GetValue("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\Diablo III", _
                                                              "InstallLocation", Nothing)
    
            If Len(DiabloIIIPath) > 0 Then
                MessageBox.Show("Chemin complet = " & DiabloIIIPath & EXEName)
                Try
                    Shell(DiabloIIIPath & EXEName)
                Catch ex As Exception
                    MessageBox.Show("Erreur : " & ex.Message)
                End Try
            End If
        End Sub


    Cordialement, Jacques


    • Modifié Jacques93 mardi 30 juillet 2013 14:12 Supp Wow6432Node
    • Marqué comme réponse Aurel Bera lundi 5 août 2013 08:52
    mardi 30 juillet 2013 14:09
  • Merci beaucoup Jacques sa fonctionne très bien , j'ai répondu un peut tard je voulais

    savoir comment sa fonctionné . 

     

    mardi 30 juillet 2013 15:25