Fally => je me suis mal exprimé, quand je dit que j'ai du redémarrer mon PC, c'était en utilisant ta méthode! 
teddyalbina => ce sera la dernière solution à envisager, je trouve ça bien compliqué, alors que je suis sur que le problème ne doit pas être grand chose 
Jérôme Lambert => effectivement, je pense plutot que le probleme vient de la. Comme je l'ai dit dans mon premier post, je redémarre l'application à partir du thread en parallèle à l'interface graphique.
En fait, dans le Main() de l'application, je charge tout mes composants graphiques, et une fois terminés je lance le deuxième thread, mais bien sur le thread principal est toujours Alive.
Comme je suis obligé de faire la détection de MAJ dans le deuxième thread, j'ai essayé ensuite de la manière suivante:
dans le 2ème thread, au lieu de faire Application.Restart quand les MAJ sont prètes, je fais
Thread.CurrentThread.Abort();
dans le thread principal, je fais:
1 2 3 4
|
Thread2.Run(); // lancement du deuxième thread
while (Thread2.IsAlive) {} // ne fait rien
Application.Restart() // quand le thread 2 est arrété, redémarrage |
cette méthode ne marche pas non plus, mais effectivement comme je ne m'y connait pas trop en Thread, je ne suis pas sur que tout ceci soit bien clean de toute façon...
Merci pour vos réponses!
Partager