begin process at 2012 02 15 01:13:39
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Visual Basic & VB.NET

 > 

Archives Visual Basic

 > 

Shell

 > 

pb : lancer une application sans en connaître le chemin


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

pb : lancer une application sans en connaître le chemin

jeudi 16 février 2006 à 13:08:30 | pb : lancer une application sans en connaître le chemin

julien3d

Bonjour,
Je voudrais lancer l'application winzip32.exe à partir d'un shell :

   monfichier = "C:\Monfichier.zip"
   destination="C:\"
   commande = "winzip32.exe -e -o " & monfichier & destination
   Shell (commande)

Evidemment, mon prog ne sais pas où se trouve winzip32.exe donc il me génère une erreur "fichier introuvable".
Je voulais donc savoir si, d'une manière générale, il est possible de récupérer le chemin d'une application installée sur le système, et éventuellement de savoir si elle est, ou n'est pas, installée.

jeudi 16 février 2006 à 13:17:19 | Re : pb : lancer une application sans en connaître le chemin

olixelle

ben ya plusieurs possibilités:
1. tu inclus l'appli dans ton programme (prend une version freeware style 7zip ou qzip)
2. tu regardes dans la base de registre
3. tu fais une recherche récursive pour chercher l'appli

Rollerman
jeudi 16 février 2006 à 13:36:54 | Re : pb : lancer une application sans en connaître le chemin

pcpt

Administrateur CodeS-SourceS
salut,
il faut utiliser l'API ShellExecuteEx pour lancer un programme à partir de l'extension qui lui est associée.

++
PCPT   [AFCK]

jeudi 16 février 2006 à 13:58:24 | Re : pb : lancer une application sans en connaître le chemin

julien3d

Rollerman : tes possibilités sont intéressantes mais je ne sais pas comment les mettre en oeuvre. Mais bon, te bile pas, je vais chercher sur les pistes que tu m'as donné je t'en remercie.

PCPT : cette API à l'air pas mal mais c'est pas tout à fait ce que je veux car elle ne me permet pas d'envoyer des arguments à l'appli comme dans l' exemple "winzip32.exe -e -o"

jeudi 16 février 2006 à 14:30:41 | Re : pb : lancer une application sans en connaître le chemin

pcpt

Administrateur CodeS-SourceS
ok, dans ce cas en effet, il faut passer par le registre....
regarder si "zip" est associé à winzip.
si c'est la cas, lire la clé d'install, y ajouter les paramètres et le nom du fichier à ouvrir.
sinon, celui par défaut et le fichier, par simple shell

jeudi 16 février 2006 à 14:37:55 | Re : pb : lancer une application sans en connaître le chemin

crenaud76

Effectivement, ShellExecute() ne convient pas dans ce cas. Il faut que tu utilises l'API FindExecutable() qui te retourne le chemin complet d'un EXE à partir d'un fichier qui lui est associé (si c'est bien le cas). En voici un exemple issu de l'APIGuide Const MAX_FILENAME_LEN = 260 Private Declare Function FindExecutable Lib "shell32.dll" Alias "FindExecutableA" (ByVal lpFile As String, ByVal lpDirectory As String, ByVal lpResult As String) As Long Private Sub Form_Load() 'KPD-Team 1999 'URL: http://www.allapi.net/ 'E-Mail: KPDTeam@Allapi.net Dim i As Integer, s2 As String Const sFile = "C:\Windows\Readme.txt" 'Check if the file exists If Dir(sFile) = "" Or sFile = "" Then MsgBox "File not found!", vbCritical Exit Sub End If 'Create a buffer s2 = String(MAX_FILENAME_LEN, 32) 'Retrieve the name and handle of the executable, associated with this file i = FindExecutable(sFile, vbNullString, s2) If i > 32 Then MsgBox Left$(s2, InStr(s2, Chr$(0)) - 1) Else MsgBox "No association found !" End If End Sub CR


Cette discussion est classée dans : exe, application, lancer, chemin, winzip32


Répondre à ce message

Sujets en rapport avec ce message

Lancer un exe sous vb6 [ par zidane22 ] Bonjour Je cherche à savoir comment Lancer un exe qui se trouve dans le même dossier que mon application, sans avoir un chemin d'accès prédéfinis. Com Lancer un executable avec un bouton [ par campa71 ] Bonjour, je souhaite lancer une application à partir d'un bouton sur mon form1. Le raccourci bureau de l'appli lance une commande du type : "[i]che protéger une application [ par juuken ] voila j'ai créer un petit programme en vb, j'ai créer mon exe et maintenant je souhaite le le protéger en le cryptant, mais de façon a pouvoir tout de Connaitre le chemin de l'application qui lance un processus. [ par Mayzz ] Bonjour, J'ai encore besoin de vos lumières [^^happy17] Quelqu'un connaitrait-il par le plus grand des hasards le moyen de récupérer le chemin compl comment Controler une application lancer dans le processus [ par elmobile ] salut tous les amisje vous demande si possible à m'aider à trouver une solution de ce problème et merci d'avance.alors voila :j'ai une application app Shell [ par aljeth ] bonjour, Sous Excel en utilisant une macro il est possible de lancer différentes applications de types : Shell ("winword.exe") ou Shell ("outlook.exe Comment lancer un exe sous VB6 sans connaitre le chemin ? [ par Jerome ] OU comment trouver le répertoire complet d'un fichier exécutable ? Merci, lancer explorer avec un chemin d'affichage donné : [ par jym ] Bonjour,qui saurait m'aider à mettre en oeuvre une commande qui permette de lancer l'explorateur de windows en lui donnant un chemin (connu d'avance) debutant: chemin d'application [ par jimmy69 ] bonjour a tous,j'ai fait une p'tite application avec vb 6 ety access ou je liste les enregistrements!j'insere, supprime etc!je travaille avec un data! Lancer une application .exe avec argument a partir d'une application cpp [ par ian_solo ] Bonjour,J'explique mon probleme, je cherche a ecrire sur un port // a partir d'une application en cpp, mais je ne trouve aucune commande permettant de


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,421 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales