theflayer
Messages postés125Date d'inscriptiondimanche 28 février 2010StatutMembreDernière intervention21 juin 2015
-
18 août 2010 à 16:24
theflayer
Messages postés125Date d'inscriptiondimanche 28 février 2010StatutMembreDernière intervention21 juin 2015
-
19 août 2010 à 14:02
Salut !
J'avais dit que je reviendrais avec ma methode
Voila problème surement tous bête :
J'ai ma méthode qui convertit mes TextBox, ce que je voudrais c'est que cela me renvoie des erreurs dans certain cas :
public void Calculreseau (string ip_addr, byte m, out byte ip, out byte ar, out string maskpattern, out byte mr, out byte broad)
{
ip = Convert.ToByte(ip_addr);
ar = (byte)(ip & m);
maskpattern = Convert.ToString(m, 2);
mr = Convert.ToByte(new string(Convert.ToString(m, 2).PadLeft(8, '0').Reverse().ToArray()), 2);
broad = (byte)(ip | ~mr);
}
les cas ou je veux l'erreur :
if ( ip < 0 && ip > 255) { MessageBox.Show("Entrée une valeur comprise entre 0 et 255")}
Mais si je met ça dans la méthode après ip , ip marche plus pour le reste . Je me suis dit peut être avec try et catch mais je pense que le problème serait le même. J'aimerais aussi que si la valeur de ip = ""; ça me renvoie la même erreur si possible.
Merci du coup de main.
Linux c'est une question de VI ou de MORE !
Si Bill Gates donnait du lait à ses programmeurs, ça ferait peut-être des OS costaud.
theflayer
Messages postés125Date d'inscriptiondimanche 28 février 2010StatutMembreDernière intervention21 juin 20152 19 août 2010 à 14:02
Salut Miltiades, en faite dans ma méthode , ip_addr correspond a un TextBox, j'aimerais avoir une Alert du type MessageBox , si la valeur entrée dans ce TextBox est >255, < 0 ou nul que ça me return le MessageBox, mais le soucis c'est que quand je fais un try catch ou un if la variable mise dans la condition n'est pas gérer après. Par ex , si je dit if( ip < 0 && ip > 255) ben cette condition marche mais ip n'ai plus gérer pour le reste de ma méthode.
Par ex si je fais ça :
public void Calculreseau (string ip_addr, byte m, out byte ip, out byte ar, out string maskpattern, out byte mr, out byte broad)
{
ip = Convert.ToByte(ip_addr);
if (ip < 0 && ip > 255) { MessageBox.Show("Entrée une Valeur Comprise entre 0 et 255"); }
ar = (byte)(ip & m);
maskpattern = Convert.ToString(m, 2);
mr = Convert.ToByte(new string(Convert.ToString(m, 2).PadLeft(8, '0').Reverse().ToArray()), 2);
broad = (byte)(ip | ~mr);
}
Ça me renverra l'exception du byte avant l'alert : La valeur était trop grande ou trop petite pour un octet non signé. sur "ip = Convert.ToByte(ip_addr);"
mais si je fais ça :
public void Calculreseau (string ip_addr, byte m, out byte ip, out byte ar, out string maskpattern, out byte mr, out byte broad)
{
if (ip < 0 && ip > 255) { MessageBox.Show("Entrée une Valeur Comprise entre 0 et 255"); }
ip = Convert.ToByte(ip_addr);
ar = (byte)(ip & m);
maskpattern = Convert.ToString(m, 2);
mr = Convert.ToByte(new string(Convert.ToString(m, 2).PadLeft(8, '0').Reverse().ToArray()), 2);
broad = (byte)(ip | ~mr);
}
Ça me renverra l'execption Utilisation d'un paramètre out non assigné 'ip'
Donc si je peux pas faire de condition comment je fais moi .
Linux c'est une question de VI ou de MORE !
Si Bill Gates donnait du lait à ses programmeurs, ça ferait peut-être des OS costaud.