t0fx
Messages postés22Date d'inscriptionmercredi 24 octobre 2007StatutMembreDernière intervention 1 décembre 2009
-
16 mars 2009 à 22:33
t0fx
Messages postés22Date d'inscriptionmercredi 24 octobre 2007StatutMembreDernière intervention 1 décembre 2009
-
18 mars 2009 à 10:41
Salut ! Je débute en C# et j'ai commencé à coder un bot irc pour tenir mon chan ouvert quand personne n'est connecté dessus. La plupart du bot est terminé mais j'ai un ptit soucis pour ajouter une fonction... J'aimerai que le bot ouvre une page internet chez moi quand je tape une url sur mon chan... J'ai essayé comme ça :
if (inputLine.EndsWith(".com"))
{
int url_start = inputLine.IndexOf("http://");
string url_good = inputLine.Substring(url_start);
System.Diagnostics.Process.Start(url_good, true);
le soucis c'est que System.Diagnostics.Process.Start n'a pas l'air de vouloir fonctionner avec un string (caleçon non plus d'ailleur!)... Comment je pourrai faire pour que ça fonctionne ?
Merci d'avance !
krimog
Messages postés1860Date d'inscriptionlundi 28 novembre 2005StatutMembreDernière intervention14 février 201549 17 mars 2009 à 15:15
Salut.
As-tu vérifié si url_good avait la bonne valeur ?
Le deuxième argument de Process.Start ne peut pas être un booléen. Généralement ce sont les arguments de la ligne de commande.
Si ça ne marche pas en mettant un seul argument, tu peux essayer comme ça : Process.Start(@"C:\Program Files\Mozilla Firefox\firefox.exe", url_good);
t0fx
Messages postés22Date d'inscriptionmercredi 24 octobre 2007StatutMembreDernière intervention 1 décembre 2009 17 mars 2009 à 20:51
Pour éviter que des url s'ouvrent trop souvent je voulai rajouter une commande. Genre taper l'url et "!visit".
Comment je peux faire pour isoler l'url ? J'ai essayé comme ça :
Le soucis maintenant c'est le "-" qui accepte pas non plus les strings ou les int... Tu vois un autre moyen ? J'ai pensé à un regex mais je voulai être sur avant qu'il n'y ai pas d'autre solution.
krimog
Messages postés1860Date d'inscriptionlundi 28 novembre 2005StatutMembreDernière intervention14 février 201549 18 mars 2009 à 10:08
Salut
Tout d'abord, dans la conception, cette ligne est mauvaise : System.Diagnostics.Process.Start(url_good) - " !visit";
Au niveau des types tu es en train de faire : Process - string
Si (je dis bien si) on pouvait utiliser l'opérateur - sur des strings, il aurait fallu écrire System.Diagnostics.Process.Start(url_good - " !visit");
Ensuite, le - n'est pas surchargé sur un string. Tu ne peux donc pas l'utiliser. Pour enlever un texte précis d'un string, il faut le remplacer par rien :
url_good.Replace(" !visit", string.Empty);
De plus, effectivement, si tu veux jouer de manière plus aboutie avec les strings, je te conseille de regarder les expressions régulières et la classe Regex, ce sera plus simple à faire et plus efficace.
Krimog :
while (!succeed = try()) ;
Vous n’avez pas trouvé la réponse que vous recherchez ?