bonjour
je sais qu'il a beaucoup des sujets qui se ressemblent à ma question mais je pige rien et là je veux poser ma question, j'espere que quelqu'un va m'aidé :
bon je veux uploader un fichier .img ou .exe... dans un ftp, mon code fait correctement ce que je veux mais parfois la taille de mon fichier est assez grande 2Mo... ce qui paralise complètement ma form1.
j'ai pense qu'un thread peut faire l'affaire mais je n'est pas reussi, j'ai meme ajouter une progresse bar pour suivre quelque idée dans le forum mais je n'est pas reussi.
voici mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 private void progressbarupload() { try { while (this.progressBar1.Value < this.progressBar1.Maximum) { bytesSize = stream.Read(buffer, 0, buffer.Length); reqStream.Write(buffer, 0, bytesSize); longeur += 1; this.progressBar1.Value = longeur; this.Update(); } reqStream.Close(); stream.Close(); } catch (Exception ex) { MessageBox.Show("ne veut pas\n" + ex.Message, "Erreur d'upload", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
lorsque je clique le fichier ne peux s'uploader alors il se passe dans l'exception, mais si j'enleve le thread et je vais seulement
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 private void button2_Click(object sender, EventArgs e) { Thread thread_ecriture = new Thread(new ThreadStart(progressbarupload)); thread_ecriture.IsBackground = true; thread_ecriture.Priority = ThreadPriority.Highest; //region Démarrer l'écriture thread_ecriture.Start(); }
la form1 ce paralise mais le fichier se upload sans aucun probleme.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 private void button2_Click(object sender, EventArgs e) { progressbarupload(); }
ma question est ce que je peux faire un thread pour ma form1 ? sinon comment résolut mon problème.
merci avance
Partager