Ouverture d'un fichier en VB6 [Résolu]

Messages postés
335
Date d'inscription
vendredi 21 octobre 2005
Statut
Membre
Dernière intervention
8 mars 2008
- - Dernière réponse : basamir
Messages postés
335
Date d'inscription
vendredi 21 octobre 2005
Statut
Membre
Dernière intervention
8 mars 2008
- 18 mai 2007 à 23:27
bonjour ,
je voulais  à partir d'un buton de ma feuille VB ouvrir un fichier hyperterminal nommé Hispa.ht

Private Sub ht_Click()
Shell App.Path & "\Hispa.ht"
End Sub

ceci ne fonction pas, j'ai même mis tout le chemin sans résultat!

Private Sub ht_Click()

Shell ("C:\Hispa.ht")

End Sub
Afficher la suite 

14 réponses

Meilleure réponse
Messages postés
335
Date d'inscription
vendredi 21 octobre 2005
Statut
Membre
Dernière intervention
8 mars 2008
3
Merci
voici la méthode les gars:

Private Const SW_SHOWNORMAL = 1
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

ShellExecute Me.hwnd, "open", "C:\fichier.xyz", vbNullString, "C:\Windows", SW_SHOWNORMAL

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 188 internautes nous ont dit merci ce mois-ci

Commenter la réponse de basamir
Messages postés
1822
Date d'inscription
mardi 31 mai 2005
Statut
Membre
Dernière intervention
26 octobre 2010
0
Merci
Violent Ken
Salut, recherche "ShellExecute" sur le site.
@+

Hex Editor VB
Commenter la réponse de violent_ken
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
61
0
Merci
Salut
"Ca ne fonctionne pas" ne donne pas assez de détail sur ce qui se produit :
As-tu une erreur VB ?
Une erreur système ?
Bien sur, laquelle ?

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
Commenter la réponse de cs_Jack
Messages postés
1822
Date d'inscription
mardi 31 mai 2005
Statut
Membre
Dernière intervention
26 octobre 2010
0
Merci
Violent Ken
C'est juste qu'il veut ouvrir un fichier non exécutable avec un Shell. D'où l'utilisation nécessaire de l'API ShellExecute.

@+

Hex Editor VB
Commenter la réponse de violent_ken
Messages postés
335
Date d'inscription
vendredi 21 octobre 2005
Statut
Membre
Dernière intervention
8 mars 2008
0
Merci
tout à fait viloent_ken mais je n'ai rien trouvé sur le site !!? ou si tu veux j'ai pas su trouver la solution ou une indiq de solution.

Voici l'erreur jack:
je commence par le bouton:
Private Sub ht_Click()
Shell App.Path & "\Trade.ht"
End Sub

et l'erreur est :
Appel ou argument de procédure incoerrect
Commenter la réponse de basamir
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
61
0
Merci
Ok pour le message.
C'est donc une erreur VB
Une syntaxe avec des " ne devrait pas donner cette erreur
Shell """" & App.Path & "\Trade.ht"""
Les doubles "" permettent d'insérer un simple " à l'intérieur d'une chaine String
Certaines fonctions, surtout celles liées au DOS, n'acceptent pas les espaces dans les paramètres car elles assimilent l'espace comme un séparateur de mot clé. Il faut donc encadrer le paramètre avec des "

Mais, comme te le suggère Violent_Ken, la vraie solution est dans ShellExecute : Des exemples parmi les Codes et des réponses dans le forum : cherche
Commenter la réponse de cs_Jack
Messages postés
1822
Date d'inscription
mardi 31 mai 2005
Statut
Membre
Dernière intervention
26 octobre 2010
0
Merci
Violent Ken
Jack ==> l'erreur qu'il obtient est liée au type de fichier
Exemples :

Provoque une erreur "Argument ou appel de procédure incorrect" :
Private Sub Command1_Click()
   Shell "c:\fichier existant.txt"
End Sub
<hr />

Provoquent une erreur "Fichier introuvable" :
Private Sub Command1_Click()
   Shell "c:\fichier inexistant.txt"
End Sub<hr />
Private Sub Command1_Click()
   Shell "c:\fichier inexistant.exe"
End Sub , ----
By Renfield
@+

Hex Editor VB
Commenter la réponse de violent_ken
Messages postés
335
Date d'inscription
vendredi 21 octobre 2005
Statut
Membre
Dernière intervention
8 mars 2008
0
Merci
j'ai trouvé ce code mais j'ai pas su le comprendre ni le traduire:

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
 Dim Ouvrir As String
 Ouvrir = "http://www.vbfrance.com" 'ouvre la page dans le navigateur ouvert/par défaut
 OU Ouvrir = "c:\machin\truc.txt"
 OU Ouvrir = "c:\truc.exe"
 ShellExecute Me.hwnd, vbNullString, Ouvrir, "", vbNullString, 1

merci les amis
Commenter la réponse de basamir
Messages postés
335
Date d'inscription
vendredi 21 octobre 2005
Statut
Membre
Dernière intervention
8 mars 2008
0
Merci
y a  t il des mains qui puissent me rendre ce service les amis :) je me tue à faire ça sans aucun résultats*
Commenter la réponse de basamir
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
18
0
Merci
Hé Bé !
"TA méthode", dis-tu ?

Il me semble pourtant que c'est la seule et que c'est également celle à laquelle te convie depuis un moment Violent Kent, non ?
Il me semble également que tu la trouverais telle quelle (en exemple) sur ALLAPI-GUIDE ...
Ah oui, pardon : à la seule exception près du nom de fichier à ouvrir ...
Je te trouve assez gonflé de la baptiser RA méthode...
pardonne-moi, mais je devais le dire ici de façon claire ..

Bon... me voilà renseigné. Je vais donc très calmement te laisser faire avec Enumports...
Commenter la réponse de jmfmarques
Messages postés
335
Date d'inscription
vendredi 21 octobre 2005
Statut
Membre
Dernière intervention
8 mars 2008
0
Merci
salut jmfmarques,

je ne comprends pas ce que tu voulias dire par ton poste:


Hé Bé !
"TA méthode", dis-tu ?

Il
me semble pourtant que c'est la seule et que c'est également
celle à laquelle te convie depuis un moment Violent Kent, non ?
Il me semble également que tu la trouverais telle quelle (en exemple) sur ALLAPI-GUIDE ...
Ah oui, pardon : à la seule exception près du nom de fichier à ouvrir ...
Je te trouve assez gonflé de la baptiser RA méthode...
pardonne-moi, mais je devais le dire ici de façon claire ..

Bon... me voilà renseigné. Je vais donc très calmement te laisser faire avec Enumports...
Commenter la réponse de basamir
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
18
0
Merci
voilà donc où les choses ont été rectifiées par basamir comme il se devait
http://www.vbfrance.com/infomsg_BARRE-PROGRESSIVE-SUR-PAGE-VB6_944195.aspx?p=2
Citation :
"Je remercie Violent Ken (qui m'avait indiqué une solution) et VBFRance (où j'ai trouvé mon code tout fait)
Voilà c'est fai"

Bien, Basamir.



Amitiés et à demain, dans ce cas, avec ta soluce attentue pour des ports com.
Commenter la réponse de jmfmarques
Messages postés
335
Date d'inscription
vendredi 21 octobre 2005
Statut
Membre
Dernière intervention
8 mars 2008
0
Merci
Merci à tout le monde
Commenter la réponse de basamir