Accueil > Forum > > > > telechargement d'image
telechargement d'image
jeudi 13 septembre 2012 à 01:13:03 |
telechargement d'image

Rapakooti
|
Bonjour,
Pour mon programme je telecharge des photos depuis une boucle via un thread.
Code C# :
Thread t = new Thread(new ParameterizedThreadStart(Lance_Telechargement));
t.Start(emplacementinfofilm + "\\");
je l'ai mis dans un thread car j'ai pas mal d'image a telecharger, en fait je parcours un datagried avec des photos a prendre sur internet.
Jusque la tous marche si je laisse le programme telecharger toute les images, sinon les fichiers sont cree mais illisible.
Comment puis je faire pour que le telechargement se fasse et que le programme attend sans fige mais peut etre avec une progresse barre ou autre . Merci
voici le thread
Code C# : // telechargement du fichier
private void Lance_Telechargement(object para)
{
try
{
WebClient client = new WebClient();
client.DownloadFile(vignette2.Text, para + "poster.jpg");
}
catch
{
MessageBox.Show("Le fichier suivant "+para + "poster.jpg n'a pas pu etre téléchargé");
}
}
R A P A K O O T I
|
|
jeudi 13 septembre 2012 à 09:25:04 |
Re : telechargement d'image

L0ci
|
Bonjour,
Ou est ta boucle dans ton code actuellement? Si tu veux faire du multi threading avec des boucles tu peux voir du côté de Parallel.foreach ici.
Pour la progress bar c'est une bonne idée mais tu dois connaitre le nombre d'éléments que tu va télécharger ou le nombre de thread que tu va lancer pour pouvoir l'utiliser (pour connaitre le pas ou la valeur max).
|
|
jeudi 13 septembre 2012 à 10:17:42 |
Re : telechargement d'image

Rapakooti
|
J ai pas mit la boucle car en elle même elle fonctionne . Je parcours juste tous les lignes d une datagriedview contenant l emplacement de fichier nfo et donc à chaque ligne je récupére différent element dont l adresse d une image en fait faudrait que je bloque la fermeture du programme avec une progressbarre tant que toute les images ne sont pas télécharger
R A P A K O O T I
|
|
jeudi 13 septembre 2012 à 10:21:20 |
Re : telechargement d'image

L0ci
|
Ah d'accord. Tu peux alors mettre ta boucle dans un background worker.
- ça empêchera ton programme de se bloquer
- tu peux enregistrer les évènements de modification(pour la progressbar)
- tu peux enregistrer l’évènement de fin pour savoir quand le programme a fini son boulot.
|
|
jeudi 13 septembre 2012 à 10:27:48 |
Re : telechargement d'image

Rapakooti
|
Le souci est que je maîtrise pas le background worker :-( en fait faut que j arrive à détecte la fin du thread comme ça quand ils sont tous fini je débloque la fermeture du programme :-)
R A P A K O O T I
|
|
jeudi 13 septembre 2012 à 10:34:58 |
Re : telechargement d'image

L0ci
|
Alors voila comment faire:
Code C# :
//on crée le background worker
BackgroundWorker bwDl = new BackgroundWorker();
//on défini la fonction appelée
bwDl.DoWork += new DoWorkEventHandler(_bw_DoWork);
//on défini la fonction appelée quand le boulot est fini
bwDl.RunWorkerCompleted += new RunWorkerCompletedEventHandler(_bw_RunWorkerCompleted);
//on démarre le job
bwDl.RunWorkerAsync();
//fonction qui fait les téléchargements
void bwDl_DoWork(object sender, DoWorkEventArgs e)
{
//mets ta boucle comme elle éxiste déjà.
//rien à changer normalement
}
//évènement de fin de boulot
void _bw_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
{
//message, notification...
}
|
|
jeudi 13 septembre 2012 à 10:48:13 |
Re : telechargement d'image

Rapakooti
|
Merci beaucoup je test se soir
R A P A K O O T I
|
|
vendredi 14 septembre 2012 à 19:01:46 |
Re : telechargement d'image

Rapakooti
|
merci encore , mais je recupere comment mon parametre ? pour lance le telecharment?
R A P A K O O T I
|
|
vendredi 14 septembre 2012 à 21:18:59 |
Re : telechargement d'image

L0ci
|
Re,
Désolé j'avais pas vu que tu avais un paramètre  .
Tu peux faire comme ca :
Code C# :
bwDl.RunWorkerAsync(parametre);
void bwDl_DoWork(object sender, DoWorkEventArgs e)
{
//le paramètre est récupéré via sender :)
//mets ta boucle comme elle éxiste déjà.
//rien à changer normalement
}
j'espère que ca marchera pour toi comme ca.
|
|
lundi 17 septembre 2012 à 22:37:46 |
Re : telechargement d'image

Rapakooti
|
Il doit y avoir une erreur j'ai une
Erreur 1 Le nom '_bw_DoWork' n'existe pas dans le contexte actuel E:\Dropbox\Programmation Csharp\Premier programme\Lister film\deuxieme sauvegarde Filmeur 25072012\Filmeur\Form1.cs 380 63 Filmeur
et
Erreur 2 Le nom '_bw_RunWorkerCompleted' n'existe pas dans le contexte actuel E:\Dropbox\Programmation Csharp\Premier programme\Lister film\deuxieme sauvegarde Filmeur 25072012\Filmeur\Form1.cs 383 87 Filmeur
POur pallier ca j'ai tenté de mettre le composant backgrounder mais je peux pas le lance plusieurs fois au telechargement d'image
R A P A K O O T I
|
|
Cette discussion est classée dans : programme, code, image, thread, telechargement
Répondre à ce message
Sujets en rapport avec ce message
Programme freeze, aide ajouter thread [ par deli2025 ]
Bonjour, je suis nouveau dans le domaine de c# et j'apprends sur le tas^^ Je viens de créer un petit programme qui hash du texte en sha1 ou md5 et ma
utilisation d'un thread pour afficher l'état d'avancement d'un programme [ par Karibot ]
bonjour, j'ai un petit problème: j'ai un programme en windows form qui fonctionne correctement sauf qu'il est trop lent et j'aimerai qu'il m'affiche l
Simulation d'image [ par idrissiilias ]
Bonjour, J'ai une question , en fait je dois faire un programme qui détecte les LEDs éteintes Donc je dispose d'une camera HD Microsoft je prend en p
Image dans un userControl qui hérite d'un bouton [ par madkeyboard ]
Bonjour ! Je vais vous exposer un problème dont je pressens que la solution est simple ^^ J'ai créé un userControl qui hérite de la classe Button, a
comment dessiner des objets graphiques sur une image [ par ami7 ]
bonsoir, j'utilise un code c# qui permet de dessiner des objets ghraphiques (rectangle , ellipse, ligne...) le question c'est que je veut tout d'abord
Compiler un programme avec du code [ par Hermios ]
Salut à tous, Alors de ce que j'ai pu lire, c'Est un sujet récurrent, mais malgré toutes les infos, je suis perdu, donc : A la base, je voudrai compil
Récupérer une image d'un PowerPoint [ par Christophe59193 ]
Bonjour tout le monde, Alors aujourd'hui, je viens vous voir car je suis légèrement bloqué (pour ne pas dire complètement) Je travaille actuellement
ImageList à remplir par code [ par mecyber25 ]
Bonjour, pourquoi Visual Studio 2010 m'affiche un message d'erreur [^^sad1]("Exception non gérée...") quand je veux remplir ainsi l'imagelist ? Tan
Lancer plusieurs Threads à la fois [ par Karibot ]
Bonjour, j'essaye de lancer plusieurs threads à la fois et j'ai l'impression que il n'y en as qu'un seul qui part... et donc pas de parallelisme effec
execution d'un programme code source [ par tintin4048 ]
J'ai telecharger un programme. Celui ci comporte un exe. Commet ouvrir à partir de cet exe qui n'est pas reconnu ? Je suis debutant et ma question n'a
Livres en rapport
|
Derniers Blogs
INTéGRATION YAMMER ET SHAREPOINT ONLINE (OFFICE 365), éTAPE 1 .INTéGRATION YAMMER ET SHAREPOINT ONLINE (OFFICE 365), éTAPE 1 . par Patrick Guimonet
#Yammer Certains s'en sont déjà fait l'écho (ici en allemand par exemple : Yammer Integration in Office 365 Phase 1) ou bien sûr sur le blog SharePoint : Make Yammer your default social network in Office 365 en anglais. Mais c'e...
Cliquez pour lire la suite de l'article par Patrick Guimonet [DYNAMICS CRM] AJOUTER LES DOSSIERS DE CRM AU DOSSIER FAVORIS D'OUTLOOK[DYNAMICS CRM] AJOUTER LES DOSSIERS DE CRM AU DOSSIER FAVORIS D'OUTLOOK par bianca
Objectif
Pour aller plus rapidement dans les menus de Dynamics CRM depuis votre client CRM pour Outlook, vous pouvez utiliser le dossier des Favoris d'Outlook. En effet, par simple glisser/déplacer, vous pouvez déposer un éléme...
Cliquez pour lire la suite de l'article par bianca VISUAL STUDIO 2013VISUAL STUDIO 2013 par Etienne Margraff
Ahh, ENFIN ! c'est officiel, il va y avoir un VS et un TFS 2013. De nouvelles fonctionnalités qui vont à mon sens assoir la maturité de TFS qui est maintenant l'outil incontournable pour tout projet (.NET, mais pas seulement !). Si vous n'avez pas jet...
Cliquez pour lire la suite de l'article par Etienne Margraff CONFIGURER LA COLLATION SQL SERVER POUR SHAREPOINT CONFIGURER LA COLLATION SQL SERVER POUR SHAREPOINT par JeremyJeanson
Note : Je poste cet article à titre de pense-bête. Cela fait des années que je me trimballe avec une capture d'écran, car je ne me rappel jamais comment choisir la collation d'un SQL Server pour SharePoint. Pour SharePoint, il est conseillé de choisir la ...
Cliquez pour lire la suite de l'article par JeremyJeanson ETENDRE LE TEAM WEB ACCESS DE TFS 2012 - STEP 1: CRéATION DU PLUGINETENDRE LE TEAM WEB ACCESS DE TFS 2012 - STEP 1: CRéATION DU PLUGIN par Philess
Dans cet article nous allons créer un plugin installable sur le Team Web Access qui s'intègrera dans l'architecture du site et se chargera au moment où on le décidera.
Avant de lire ce billet et si cela n'est pas encore fait j...
Cliquez pour lire la suite de l'article par Philess
Logiciels
Nego Facturation (1.85)NEGO FACTURATION (1.85)Nego Facturation est un logiciel complet qui permet de gérer vos factures et devis très simplemen... Cliquez pour télécharger Nego Facturation Devis-Factures PHMSD (2.2.0.1)DEVIS-FACTURES PHMSD (2.2.0.1)Configuration minimale
Nécessite Windows™ 2000, XP, Windows 7, 8, Vista (Service Pack à... Cliquez pour télécharger Devis-Factures PHMSD WDmemoCode (2.0.0.1)WDMEMOCODE (2.0.0.1)WDmemoCode a été conçu pour aider les développeurs Windev à créer/compléter et conserver une base... Cliquez pour télécharger WDmemoCode ProtoMedic (4.0.0.11)PROTOMEDIC (4.0.0.11)ProtoMedic est un logiciel destiné principalement aux médecins généralistes.
ProtoMedic permet d... Cliquez pour télécharger ProtoMedic MyCurriculum 2011 (7.4.1.12)MYCURRICULUM 2011 (7.4.1.12)Rédigez votre Curriculum Vitae mais également ceux de votre famille ou de vos amis très facilemen... Cliquez pour télécharger MyCurriculum 2011
|