Bonjour,
Je refais appelle a vous pour un autre problème au qu'elle j'ai deja trouver plusieurs solution sur google mais étant débutant je ne comprend pas les solution proposé ses pourquoi je fais appelle a vous pour m'expliquer plus clairement ce qui pause problème avec mes threads voici mon code
Est le message d'erreur est :Code:using system; using system.collections.generic; using system.componentmodel; using system.data; using system.drawing; using system.linq; using system.text; using system.threading.tasks; using system.windows.forms; using system.io.ports; namespace windowsformsapplication2 { public partial class form1 : form { public int ini; public int dema; public string sac = "ggg"; public string ssc; public string ca1; public int c1; private serialport myport; public form1() { initializecomponent(); init(); } private void init() { if (dema == 0) { if (sac == "1") { ssc = sac; dema = 1; } if (sac == "2") { ssc = sac; dema = 1; } if (sac == "3") { ssc = sac; dema = 1; } if (sac == "4") { ssc = sac; dema = 1; } if (sac == "5") { ssc = sac; dema = 1; } if (sac == "6") { ssc = sac; dema = 1; } if (sac == "7") { ssc = sac; dema = 1; } if (sac == "8") { ssc = sac; dema = 1; } if (sac == "9") { ssc = sac; dema = 1; } if (sac == "10") { ssc = sac; dema = 1; } if (sac == "11") { ssc = sac; dema = 1; } if (sac == "12") { ssc = sac; dema = 1; } if (sac == "13") { ssc = sac; dema = 1; } if (sac == "14") { ssc = sac; dema = 1; } if (sac == "15") { ssc = sac; dema = 1; } if (sac == "16") { ssc = sac; dema = 1; } if (sac == "17") { ssc = sac; dema = 1; } if (sac == "18") { ssc = sac; dema = 1; } if (sac == "19") { ssc = sac; dema = 1; } if (sac == "20") { ssc = sac; dema = 1; } if (sac == "22") { ssc = sac; dema = 1; } if (sac == "23") { ssc = sac; dema = 1; } if (sac == "24") { ssc = sac; dema = 1; } if (sac == "25") { ssc = sac; dema = 1; } if (sac == "26") { ssc = sac; dema = 1; } if (ssc == "0") { dema = 0; } } if (dema == 1) { if (ssc == "1") { sac301.text = sac; } if (ssc == "2") { sac302.text = sac; } if (ssc == "3") { sac303.text = sac; } if (ssc == "4") { sac304.text = sac; } if (ssc == "5") { sac305.text = sac; } if (ssc == "6") { sac306.text = sac; } if (ssc == "7") { sac307.text = sac; } if (ssc == "8") { sac308.text = sac; } if (ssc == "9") { sac309.text = sac; } if (ssc == "10") { sac310.text = sac; } if (ssc == "11") { sac311.text = sac; } if (ssc == "12") { sac312.text = sac; } if (ssc == "13") { sac313.text = sac; } if (ssc == "14") { sac314.text = sac; } if (ssc == "15") { sac315.text = sac; } if (ssc == "16") { sac316.text = sac; } if (ssc == "17") { sac317.text = sac; } if (ssc == "18") { sac318.text = sac; } if (ssc == "19") { sac319.text = sac; } if (ssc == "20") { sac320.text = sac; } if (ssc == "21") { sac321.text = sac; } if (ssc == "22") { sac322.text = sac; } if (ssc == "23") { sac323.text = sac; } if (ssc == "24") { sac324.text = sac; } if (ssc == "25") { sac325.text = sac; } if (ssc == "26") { sac325.text = sac; } if (ssc == "0") { dema = 0; } } if (ini == 0) { try { myport = new serialport(); myport.baudrate = 9600; myport.portname = "com" + numericupdown1.value; myport.parity = parity.none; myport.stopbits = stopbits.one; myport.datareceived += serialport1_datareceived; myport.readtimeout = 500; ini = 1; } catch (exception) { messagebox.show("error!!"); ini = 1; } } } /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// private void serialport1_datareceived(object sender, serialdatareceivedeventargs e) { sac = myport.readexisting(); init(); } private void off_btn_click(object sender, eventargs e) { } private void cobtn(object sender, eventargs e) { try { myport.portname = "com" + numericupdown1.value; myport.open(); messagebox.show("vous etes desormé connecté au gestionnaire de sac"); } catch (exception) { messagebox.show("aucun gestionnaire de sac n'est connecté sur se port"); } } private void checkbox1_checkedchanged(object sender, eventargs e) { if (c1 == 1) { myport.writeline("a"); c1 = 0; } else { myport.writeline("b"); c1 = 1; } } } }
Une exception non gérée du type 'System.InvalidOperationExcept ion' s'est produite dans System.Windows.Forms.dll
Informations supplémentaires : Opération inter-threads non valide : le contrôle 'sac309' a fait l'objet d'un accès à partir d'un thread autre que celui sur lequel il a été créé.
Je ne pense pas avoir besoin de préciser que le message est le meme pour les label sac301[...] sac326.
Merci d'avance.
-----