Ouverture d'un PDF avec un nom de fichier pouvant varier... [Résolu]

Signaler
Messages postés
491
Date d'inscription
mercredi 1 février 2006
Statut
Membre
Dernière intervention
18 novembre 2016
-
Messages postés
491
Date d'inscription
mercredi 1 février 2006
Statut
Membre
Dernière intervention
18 novembre 2016
-
Bonjour à tous,

Voila, en aide à mon appli, je souhaite ouvrir un PDF, jusque là, ça va, j'utilise:

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 Fichier As String, Chemin As String
Chemin = "app.patch\Help"
Fichier = "app.patch\Help\nom du PDF.pdf"
ShellExecute MDIMain.hWnd, "open", Fichier, vbNullString, Chemin, 3
'-------------------

Mais ce fichier PDF peut varier selon la version et sa mise à jour:
Procédure utilisateur LTManager V1.0_AB.pdf
ou
Procédure utilisateur LTManager V1.0_AC.pdf.....

J'ai essayer : Fichier = "app.patch\Help\*.pdf"
Bien que ce PDF soit le seul fichier.pdf du dossier HELP, ça ne fonctionne pas!

Quelqu'un aurait-in une idée pour que l'appli ouvre le fichier quelques soit son nom?

Merci

9 réponses

Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
35
salut,

en VB APP.PATH retourne le chemin racine où se trouve l'exe
APP.PATCH lui ne retourne rien de bien logique... à par une erreur

et Chemin = "app.patch \Help" c'est dire que le CHEMIN s'appelle APP.PATCH ...

Dim Chemin As String, Fichier As String
Chemin = App.Path & "\help"
Fichier = Dir(Chemin, vbSystem Or vbHidden)
MsgBox Chemin & Fichier

++
Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Messages postés
682
Date d'inscription
vendredi 6 avril 2007
Statut
Membre
Dernière intervention
4 août 2012
6
Mort de rire !!!!!!!
je manipule des "PATCH" à longueur de journée et n'ai absolument pas percuté sur la faute d'orthographe.
en effet depuis le début jimy neutron tu as la faute et moi je l'ai reprise allègrement
par contre ça ça marche lol
a moins d'une autre faute d'orthographe 

public sub cherchePdf()
fichier= Dir( app.path &"\Help" & *.*, vbDirectory)
Do While fichier<> ""
    If  ucase(right(fichier,3) ) = "PDF" then exit sub   

fichier = dir
loop

[reglement.aspx ]si c'est la solution, penser : REPONSE ACCEPTEE
Messages postés
682
Date d'inscription
vendredi 6 avril 2007
Statut
Membre
Dernière intervention
4 août 2012
6
utilise l'instruction DIR pour trouver le nom de ton fichier sur le disque et mets le dans une variable que utiliseras ensuite

[reglement.aspx ]si c'est la solution, penser : REPONSE ACCEPTEE
Messages postés
682
Date d'inscription
vendredi 6 avril 2007
Statut
Membre
Dernière intervention
4 août 2012
6
fichier = dir (app.patch & "Help\*.pdf",vbdirectory)
si mes souvenirs sont exacts

[reglement.aspx ]si c'est la solution, penser : REPONSE ACCEPTEE
Messages postés
491
Date d'inscription
mercredi 1 février 2006
Statut
Membre
Dernière intervention
18 novembre 2016
1
Merci Pile_Poil
J'essai dés ce soir. (j'ai pas VB sous la main..)
Messages postés
491
Date d'inscription
mercredi 1 février 2006
Statut
Membre
Dernière intervention
18 novembre 2016
1
Désolé Pile Poil (et moi aussi!)

Mais cela ne fonctionne pas!
Fichier="", et donc il m'ouvre le directory, mais n'exécute pas l'ouverture du pdf.

Si tu as une idée...
Messages postés
491
Date d'inscription
mercredi 1 février 2006
Statut
Membre
Dernière intervention
18 novembre 2016
1
En effet PCPT il ya une faute d'ortographe, mais uniquement sur le post,pas reproduite dans mon appli.
Bon, je vais essayer ce que vous prposé, et je vous tiens au courant.
Merci à vous deux...
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
35
la faute était anectodique ^^
le problème est que c'est DANS la chaîne
++
Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Messages postés
491
Date d'inscription
mercredi 1 février 2006
Statut
Membre
Dernière intervention
18 novembre 2016
1
Ho oui, que d'étourderies..on passe quelques fois à coté de boulettes énormes!

Bon, du coup j'ai essayé cela, et ça marche. Je n'est pas encore regarder l'utilité de "vbHidden".

Private Sub Help_Click()
Dim Fichier As String, Chemin As String
Chemin = App.path & "\Help"
Fichier = Dir(Chemin & "*.pdf", vbDirectory)
ShellExecute MDIMain.hWnd, "open", Fichier, vbNullString, Chemin, 3
End Sub

Voila, une fois de plus, merci PCPT...à toi aussi Pile-Poil

Jimy