Bonsoir,
Je suis en train de créer un petit gestionnaire de téléchargement en C qui se charge d'executer l'application Wget en lui "balançant" une ligne de commande via une API Windows.
J'ai un problème et je patauge un peu car je ne sais pas comment le résoudre.
J'ai une liste plus ou moins grande de fichiers à télécharger et j'aimerais que mon programme puisse télécharger 'X' fichiers simultanément (par exemple 2 ou 3) jusqu'à ce que la liste complète soit téléchargée. Je ne sais pas trop si je me fais bien comprendre ?
Bref, le problème, c'est que je n'arrive pas à trouver le moyen de bien gérer ces téléchargements, c'est-à-dire de savoir si un fichier est bien fini de télécharger afin de permettre le téléchargement du fichier suivant dans ma liste d'URLs.
J'avais pensé à créer un système multithreads avec un tableau indiquant l'état de chacun (actif , terminé). Pour le remplir, j'ai besoin de récupérer les informations relatives à Wget pour savoir si tel ou tel fichier est bien fini de télécharger. Et là, je nage totalement...
Je sais que CreateProcess remplit une structure d'informations diverses sur le nouveau processus, mais je n'arrive pas à l'exploiter proprement. Mais d'après ce que j'ai compris aussi, si on lance plusieurs fois un même processus, c'est le même qui tourne en utilisant différentes adresses virtuelles ?
Bref, comment puis-je faire ? Existe-t-il d'autres solutions plus propres et/ou plus efficaces ?
Merci !
Partager