Question sur les exceptions

[Résolu]
Signaler
Messages postés
2448
Date d'inscription
samedi 21 février 2004
Statut
Modérateur
Dernière intervention
29 janvier 2010
-
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
-
bonjour ,
je suis en train de faire un programme et j'ai aleatoirement un message de ce genre :
object is currently in use elsewhere

je n'arrive pas a trouver ce que veux dire cette exception et a quelle occasion elle se declenche

pouvez vous m'eclairer dessus ? un lien ?

merci

"n'est pas mort ce qui semble a jamais dormir et en d'etrange temps meme la mort peut mourrir"
A voir également:

5 réponses

Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
97
Donc tu accèdes à un contrôle PictureBox depuis un autre thread que celui qui l'a crée.
Je t'invite à jeter un oeil au tutoriel de Mx : OPÉRATIONS CROSS THREADS - UTILISATION DES DELEGATIONS SYNCHRONES / ASYNCHRONES

/*
coq
MVP Visual C#
CoqBlog
*/
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
97
Salut,

Il faudrait plus de détails je pense.
Comme le type d'exception, la pile d'appel etc

Sinon à priori je pense à un problème d'accès concurent.
Tu n'accèderais pas à des contrôles depuis un thread autre que celui du GUI ?

/*
coq
MVP Visual C#
CoqBlog
*/
Messages postés
2448
Date d'inscription
samedi 21 février 2004
Statut
Modérateur
Dernière intervention
29 janvier 2010
17
selon moi la fonction fautive a laquel j'accede par un autre Thread c'est :

public
string saveIn(
string file){

string bmpf = file +
".bmp";

string jpgf = file +
".jpg";

try{

WIA.

Item item = video.Device.ExecuteCommand(WIA.
CommandID.wiaCommandTakePicture);WIA.

ImageFile imagefile = item.Transfer(WIA.
FormatID.wiaFormatBMP)
as WIA.
ImageFile;imagefile.SaveFile(

"./" + bmpf);

FileStream st =
new
FileStream(
"./" + bmpf,
FileMode.Open);

Bitmap bit =
new
Bitmap(st);pic.Image = bit;

Image img =
this.pic.Image;

Bitmap bmp =
new
Bitmap(img);bmp.Save(jpgf, System.Drawing.Imaging.

ImageFormat.Jpeg);bmp.Dispose();

bit =

null; st.Close();

return jpgf;}

catch (
Exception e) {
return jpgf; }

}

sinon pour la pile je peux pas la mettre j'attend qu'elle se produise

"n'est pas mort ce qui semble a jamais dormir et en d'etrange temps meme la mort peut mourrir"
Messages postés
2448
Date d'inscription
samedi 21 février 2004
Statut
Modérateur
Dernière intervention
29 janvier 2010
17
merci !!!
ca semble marcher si jamais ca continu je reposte :p (apres avoir cherché ^^)

"n'est pas mort ce qui semble a jamais dormir et en d'etrange temps meme la mort peut mourrir"
Messages postés
6351
Date d'inscription
samedi 1 juin 2002
Statut
Modérateur
Dernière intervention
2 août 2014
97
Ok :-)

/*
coq
MVP Visual C#
CoqBlog
*/