Bonjour, je suis débutant en C# j'ai jusque là fais que de l'Autoit.
J'avais bien avancé dans un projet de bot, mais trop bloqué par l'impossibilité de faire du multhithreading, je m'essaye au C# ! :)
J'ai aussi fais un créateur de comptes D2 entièrement fonctionnel en Autoit.
Mais maintenant que je me suis mis au WPF en C# je me retrouve bloqué à une étape ! J'ai du mal avec les threads, delegates & co..
Mon problème, c'est que lors du téléchargement + affichage de la captcha, mon UI se fige alors que je passe bien par un thread ( enfin je crois ).
Je m'en remet donc à vous en vous joignant le code ci-dessous :
( S'il manque des infos ou du code j'ajouterais à la demande :) )
Obtention de la captcha ( certes pas propre, c'est le début juste dans le but de tester déjà )
public void GetCaptcha()
{
WebClient oMyWebClient= new WebClient();
oMyWebClient.Proxy = null;
Byte[] ImageInBytes= oMyWebClient.DownloadData("http://api.ankama.com/captcha.png");
MemoryStream ImageStream = new MemoryStream(ImageInBytes)
BitmapImage bmpCaptcha = new BitmapImage();
bmpCaptcha.BeginInit();
bmpCaptcha.StreamSource = ImageStream;
bmpCaptcha.EndInit();
this.ImageCaptcha.Source = bmpCaptcha; // Affichage de la captcha dans le control ImageCaptcha
}
Mon évènement lors du clic sur le bouton de génération de celle-ci :
private void button_RechargerCaptcha_Click(object sender, RoutedEventArgs e)
{
ThreadStart Thread_GetCaptcha = delegate()
{
Dispatcher.BeginInvoke(DispatcherPriority.Normal, new Action(GetCaptcha));
};
new Thread(Thread_GetCaptcha).Start();
MessageBox.Show("Fini.."); // Accessoire évidemment
}
Voilà, ma captcha s'affiche très bien, mais lors de son affichage ma fenêtre ne "répond pas". Ca doit sauter aux yeux mais tout ceci n'est pas encore très clair pour moi :(