PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Télécharger PDF
Télécharger PDF
Débuté par Lucas, 04 juil. 2016 15:47 - 3 réponses
Posté le 04 juillet 2016 - 15:47
Bonjour à tous,

Voilà, j'aimerai avec mon programme WinDev télécharger un fichier PDF à partir de son URL.

Pour le moment j'ai deux manières pour y arriver qui ne me satisfait pas, soit j'utilise LanceAppliAssociée(lienPDF) qui télécharge le fichier PDF par le navigateur internet, ou je met le Lien dans un champ HTML qui m'ouvre une pop-up en me proposant d'ouvrir ou enregistrer-sous.

Il faudrait que je puisse télécharger dans un répertoire sans interaction avec l'utilisateur et sans programme tiers comme le navigateur internet car je devrai en télécharger plusieurs dizaines.

Merci de votre aide

Cordialement
Membre enregistré
946 messages
Popularité : +102 (110 votes)
Posté le 04 juillet 2016 - 16:16
Bonjour
j'utilise HTTPRequête(lien du fichier à télécharger) puis HTTPDonneRésultat(httpRésultat) pour récupérer le fichier que je met dans un buffer qui est écris sur le disque avec fSauveTexte (même si c'est du binaire cela fonctionne)...
ci-joint un extrait de mon code qui devrait vous suffire
//----- Construit le nom du fichier qui va être téléchargé
FileName = ComplèteRep(RepertoireTemporaire) + fExtraitChemin(httpAdress, fFichier+fExtension)

//----- On lance le téléchargement
IF InternetConnecté() THEN
IF ChampExiste(pChampJauge) THEN HTTPJauge({pChampJauge, indChamp})
IF NOT HTTPRequête(httpAdress) THEN
HTTPJauge("")
Erreur(ErreurInfo())
RENVOYER False
END
ELSE
Erreur("Vous n'êtes pas connecté à internet !")
RENVOYER False
END

//----- Prend le fichier
BufferBinaire = HTTPDonneRésultat(httpRésultat)
IF ChampExiste(pChampJauge) THEN HTTPJauge("")
IF BufferBinaire <> "" THEN
//----- et sauvegarde
fSauveTexte(FileName, BufferBinaire)
IF fFichierExiste(FileName) THEN
RENVOYER True
ELSE
Erreur(ChaîneConstruit("Sauvegarde du fichier : %1, impossible !", FileName))
RENVOYER False
END
ELSE
Erreur(ChaîneConstruit("Le fichier : %1, n'a pas été correctement téléchargé !", httpAdress))
RENVOYER False
END
Posté le 04 juillet 2016 - 16:34
Merci beaucoup !
Posté le 10 avril 2024 - 03:12
POUR i = 1 À 500
c est une chaîne=i
ResAppel est un booléen
ResAppel= HTTPRequête("https.........................+c+".pdf")
SI ResAppel=Vrai ALORS

MaChaîneTexte est un Buffer =HTTPDonneRésultat(httpRésultat)

fSauveBuffer("C:\Users\Serv\Desktop\dossier destination\"+c+".pdf", MaChaîneTexte)

FIN
FIN


Info("terminer")