begin process at 2012 02 10 20:29:54
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C#

 > 

Archives

 > 

Au secours

 > 

ThreadStateException !!


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

ThreadStateException !!

lundi 14 novembre 2005 à 18:00:27 | ThreadStateException !!

lildan

Bonjour tout le monde. Je ne sais pas pourquoi mais lorsque j'instancie un IDataObject :

IDataObject iData = Clipboard.GetDataObject();

Je recois cette erreur: «Le thread actuel doit être en mode STA (Single Thread Apartment) avant que des appels OLE puissent être effectués. Assurez-vous que votre fonction Main est marquée STAThreadAttribute.»

Pourtant, dans ma fonction Main, j'ai bel et bien mis

[System::STAThreadAttribute]

Comme il me dise de faire! Aidez-moi svp!!
lundi 14 novembre 2005 à 18:38:04 | Re : ThreadStateException !!

crougni

Salut lildan,

    c'est avec du .NET 1.1 ou 2.0 ??



lundi 14 novembre 2005 à 20:34:08 | Re : ThreadStateException !!

lildan

C'est du .net 2003 version 7
lundi 14 novembre 2005 à 20:56:00 | Re : ThreadStateException !!

crougni77


Salut lildan,

    bon ba alors, j'ai fait des tests et sous SharpDevelop, si tu as bien
[STAThread] juste avant ta méthode main sa roule bien.
Ton code est-il lancé d'un autre thread ou méthode d'une autre form ?

sinon passe un extrait de code pour voir...

A+

CrougniMan
lundi 14 novembre 2005 à 21:12:56 | Re : ThreadStateException !!

crougni77

Réponse acceptée !
Re...

sinon y a ceci qui te permet de tester si ton thread est MTA ou STA...

if(Thread.CurrentThread.ApartmentState==System.Threading.ApartmentState.MTA)
{
    // IDataObject iData = Clipboard.GetDataObject();  ==> sa va crouter
    // donc tu peux lancer un nouveau Thread, qui exécutera ta méthode   
    // contenant
    //
IDataObject iData = Clipboard.GetDataObject();
    Thread monThr=new Thread(new ThreadStart(MaSuperFonction));
    monThr.Start();
    monThr.Join();
}
else
{
    // IDataObject iData = Clipboard.GetDataObject();  ==> sa devrait rouler....
}


CrougniMan


Cette discussion est classée dans : fonction, thread, main, threadstateexception, idataobject


Répondre à ce message

Sujets en rapport avec ce message

Comment stopper un thread lorsqu'il est bloqué par une fonction bloquante [ par billou_13 ] En voila une question que je me pose depuis très longtemps !En fait, je lance un serveur TCP/IP qui attend des clients en faisant la fonction Socket.A Appel d'une fonction d'une autre classe [ par nico4nicolas ] Bonjour, Je pensais avoir compris ce qui touchait ce point mais voici que je suis confronte a un nouveau probleme. J'ai une classe non-graphique qui une fonction sleep sans thread??? [ par Handballeur95 ] Bonjour je voulai savoir si il existait une fonction d'attente genre sleep() sans avoir besoin d'utilisé des threadd'avance merci Thread et attente [ par mathmax ] Bonjour,Voilà mon problème. J'ai un thread que je veux mettre en attente d'un événement AutoResetEvent. Pendant cette attente, je voudrais qu'il envoi Thread et fonction asynchrone [ par LordBob ] Bonsoir a tous,voila je me pose une question. En fait je n'arrive pas a comprendre la différence entre un méthode asynchrone et la création d'un threa MultiThread & Fonction bloquante [ par ouaipdu53 ] Bonjour , Dans le cadre de la réalisation d'un logiciel de supervision, je dois crée une application multi-clients. Pour gérer cela, chaque client pos Envoyer des paramètres à un thread [ par billou_13 ] J'aurai voulu savoir s'il y avait moyen d'envoyer un paramètre dans un nouveau thread !Parce que dès que je créé un thread : je pose T = new Thread(</ Rendre la main à l'appelant [ par fregolo52 ] Bonjour,Y a-t-il une méthode simple en C# pour rendre immédiatement la main à la fonction appelante. En réalité je dois détruire l'objet de la fonctio Éviter qu'une thread perde la main [ par narfight ] Bonjour,Je voudrais savoir comment signaler qu'une partie de mon code exécuté dans une thread soit éxécuté en 1 seul fois et donc que le thread ne per Trouver l'id d'un thread [ par DIMUSERS ] Bonjour à tous,J'utilise QueryPerformanceCounter et pour des raisons expliquées là http://msdn2.microsoft.com/en-us/library/ms644904(VS.85).aspx je do


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,796 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales