Lancer un prog ou ouvrir un fichier à partir de VB? - VB/VBA/VBS - Programmation
Marsh Posté le 29-01-2003 à 10:45:42
Option Explicit 
 
Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _ 
  (ByVal hWnd As Long, ByVal lpOperation As String, _ 
  ByVal lpFile As String, ByVal lpParameters As String, _ 
  ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long 
 
Private Sub Command1_Click() 
Dim r As Long 
     
    r = ShellExecute(hWnd, "open", "C:\Sylvain\Contrôle de clé\Calcul des Clés.doc", vbNullString, "C:\Sylvain\Contrôle de clé", 1) 
    If r > 32 Then 
        MsgBox "ça marche" 
    Else 
        MsgBox "pas marché" 
    End If 
End Sub
Marsh Posté le 29-01-2003 à 11:37:31
Merci beaucoup! 
 
ça fonctionne très bien! 
 
Autre petite question, ma chaine de caractères comporte le répertoire et le nom du fichier... 
 
ton exemple a aussi besoin du répertoire sans le fichier.  Tu connais une commande qui sépare les deux ou je dois créer un algo pour les séparer?
Marsh Posté le 29-01-2003 à 11:41:58
Public Function ExtractFilePath(ByVal Path As String) 
Dim p As Integer 
Dim S As String 
 
    ExtractFilePath = "" 
     
    p = InStrRev(Path, "\" ) 
    If p <> 0 Then ExtractFilePath = Left(Path, p) 
End Function 
 
Public Function ExtractFileDir(ByVal Path As String) 
Dim p As Integer 
Dim S As String 
 
    ExtractFileDir = "" 
     
    p = InStrRev(Path, "\" ) 
    If p <> 0 Then ExtractFileDir = Left(Path, p - 1) 
End Function
Marsh Posté le 29-01-2003 à 10:24:20
Salut à tous!
Alors voilà, à partir d'une zone de texte contentant un nom de fichier et le répertoire de ce fichier lancer directement ce fichier quelque soit le format (avec le soft aproprié)
ex:
c:\document.xls => ouvre le doc avec excell
c:\prog.exe => execute le prog
c:\texte.doc => ouvre avec word
...
ça doit pas être très compliqué mais je n'ai pas trouvé dans les bouquins que j'ai...
Merci d'avance!
---------------
C17