[Qt] télécharger un fichier d'internet avec mon programme C++

Fermé
hautparleur Messages postés 213 Date d'inscription mercredi 9 janvier 2013 Statut Membre Dernière intervention 13 mai 2016 - 25 avril 2013 à 18:32
hautparleur Messages postés 213 Date d'inscription mercredi 9 janvier 2013 Statut Membre Dernière intervention 13 mai 2016 - 1 nov. 2013 à 18:58
J'ai fait un programme en C++ avec Qt et de dois faire un systeme de mise à jour.
J'ai pensé à un autre programme qui supprime les anciens fichiers et les remplace par des fichiers téléchargés.
Mais je ne sais pas comment télécharger un fichier depuis mon programme.
Comment on fait? merci!
A voir également:

5 réponses

hautparleur Messages postés 213 Date d'inscription mercredi 9 janvier 2013 Statut Membre Dernière intervention 13 mai 2016 15
26 avril 2013 à 17:47
Mais je ne veux pas faire un serveur,
je dois télécharger un fichier à partir du serveur de mon hebergeur.
Comme quand on télécharge un fichier avec le navigateur.
Je pourrais faire system("start www.monsite.com/fichier.exe")
mais passer par le navigateur c'est pas super.
2
Utilisateur anonyme
26 avril 2013 à 19:16
Il faut donc utiliser les sockets, que tu fasses le serveur ou le client ça revient au même finalement.

Il faut créer un socket qui va se connecter au serveur HTTP, et donc créer une requête HTTP conforme.

https://www.commentcamarche.net/informatique/technologies/26181-protocole-http-principe-de-fonctionnement/

Un conseil, utilises le HTTP 1.0 au lieu des plus récents pour éviter de recevoir des données tronquées.
0
hautparleur Messages postés 213 Date d'inscription mercredi 9 janvier 2013 Statut Membre Dernière intervention 13 mai 2016 15
27 avril 2013 à 10:04
Mais je ne sais pas comment envoyer une requête http avec mon programme ni comment enregistrer le fichier à la bonne place.
0
Utilisateur anonyme
27 avril 2013 à 13:04
comment envoyer une requête http avec mon programme -> sockets.

comment enregistrer le fichier -> tu enregistres la réponse du serveur dans la mémoire, ensuite tu ouvres un fichier en écriture et tu écris dedans ce que t'as gardé en mémoire ...

Tu t'attends peut être à ce que je te donne un code tout fait ... le genre de code que Google te permet de trouver en 10 copies différentes à l'aide d'une seule recherche.

Tu as aussi des tutoriels sur le site du zero avec Qt, les sokets et l'écriture dans des fichiers.

Sauf que programmer ne se limite pas au copier/coller ... si tu comprends pas et que tu refuses de voir les choses autrement, que tu refuses de faire un minimum d'effort pour passer du temps à chercher et essayer de comprendre comment ça marche, alors je te conseil de laisser tomber.
0
hautparleur Messages postés 213 Date d'inscription mercredi 9 janvier 2013 Statut Membre Dernière intervention 13 mai 2016 15
1 nov. 2013 à 18:58
Oui...
Merci quand même.
2
https://lmgtfy.app/?q=c%2B%2B+sockets

Musicalement,
DJ Fire-Bl@ck.
1
hautparleur Messages postés 213 Date d'inscription mercredi 9 janvier 2013 Statut Membre Dernière intervention 13 mai 2016 15
24 mai 2013 à 17:52
J'ai trouvé un tuto et j'ai eu ça:

QNetworkAccessManager * manager = new QNetworkAccessManager();
QUrl url (monUrl);
QNetworkReply * reply = manager->get(url);

Mais Qt me dit qu'il y a un problème sur QNetworkReply * reply = manager->get(url);

erreur : no matching function for call to 'QNetworkAccessManager::get(QUrl&)'

Pourquoi?
1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
C'est peu etre trop tard vu la date mais un #include <QUrl> ne serait pas du luxe :)
-1