Mini telnet

Soyez le premier à donner votre avis sur cette source.

Snippet vu 8 045 fois - Téléchargée 32 fois

Contenu du snippet

Donc c'est un telnet (mini) hum. socket + dialog. Voir la //capture

Source / Exemple :


dialog sok {
  title "sok"
  size -1 -1 175 100
  option dbu
  edit "", 2, 2 88 148 10, disable autohs
  button "Send", 3, 150 88 23 10, disable default
  text "Telnet", 4, 154 2 15 8
  edit "", 1, 2 2 148 86, read multi vsbar hsbar
  button "Deco", 5, 150 23 23 12, disable
  button "Open", 6, 150 11 23 12
  box "", 8, 150 34 23 14
  button "save", 7, 152 38 19 9
}
dialog Opensok {
  title "Opensok"
  size -1 -1 147 15
  option dbu
  box "", 1, 2 -2 120 16
  edit "", 2, 28 2 50 10, autohs
  text "Host/ip :", 3, 6 4 21 8
  text "Port :", 4, 80 4 15 8
  edit "", 5, 95 2 24 10, autohs
  box "", 6, 122 -2 24 16
  button "ok", 7, 123 2 22 11, ok cancel default
}
dialog save {
  title "Save $mircdir\.."
  size -1 -1 114 15
  option dbu
  box "", 1, 2 -2 110 16
  edit "Test.txt", 2, 28 2 56 10, autohs
  text "Fichier :", 3, 6 4 21 8
  button "ok", 7, 87 2 22 10, ok cancel default
}
alias didsm { did -i $1 $2 $did($1,$2).lines $4- | did -r $1 $3 | var %temporaire $did($1,$2,$did($1,$2).lines).text | did -d $did($1,$2,$did($1,$2).lines) | did -i $1 $2 $did($1,$2).lines %temporaire }
on 1:dialog:sok:*:*:{
  if ($devent == sclick) { 
    if ($did == 3) { set %cmds $did(2) | sockwrite -n opensok %cmds | $didsm(sok,1,2,%cmds) }
    if ($did == 6) { dialog -m opensok opensok | did -a opensok 2 %sokhostip | did -a opensok 5 %sokport }
    if ($did == 5) { did -b sok 2,3,5 | sockwrite -n opensok Bye | sockclose opensok | did -r sok 1 }
    if ($did == 7) { dialog -m save save }
  }
}
on 1:dialog:opensok:sclick:7:{ set %sokhostip $did(2) | set %sokport $did(5) | if $sock(opensock) { sockclose opensock } | sockopen opensok %sokhostip %sokport }
on 1:dialog:save:sclick:7:{ var %i 1 | while ( %i <= $did(sok,1).lines ) { if ( %i == $did(sok,1).lines ) { $didsm(sok,1,2,[Save] Terminé.) } | write $mircdirsystem\ $+ $did(save,2) $did(sok,1,%i).text | inc %i } }
on *:sockread:opensok:{ sockread %sokr | $didsm(sok,1,2,%sokr) }
on *:sockopen:opensok:{ did -e sok 2,3,5 | $didsm(sok,1,2,Connecté) }
on *:sockclose:opensok:{ did -b sok 2,3,5 | $didsm(sok,1,2,Déconnecté) }

Conclusion :


C'est ma seconde source, (que je viens juste de terminer) mais ma premiere en socket et en dialog.

A voir également

Ajouter un commentaire

Commentaires

skotmarud
Messages postés
119
Date d'inscription
samedi 5 avril 2003
Statut
Membre
Dernière intervention
26 janvier 2008
-
Merci SornDrixer j'ai compris pour les commandes grace a ton explication. Pour les picwin ça attendra :X je sais meme pas comment ça fonctionne. bref jvais voir tout ça
skotmarud
Messages postés
119
Date d'inscription
samedi 5 avril 2003
Statut
Membre
Dernière intervention
26 janvier 2008
-
j'ai encore plus court si tu veux :)
tu fais /run cmd et là dans l'invite de cmd qui s'ouvre a toi tu tape "telnet ip port" et voilà. Aussi efficace et encore plus rapide.
abdoulax
Messages postés
875
Date d'inscription
samedi 17 mai 2003
Statut
Membre
Dernière intervention
22 juin 2012
-
Ouaich assez simple ms ça m'a l'air poa mal. Sinon dommage que tu utilise un system de dialog.

Sinon je suis désolé si je te fais concurence en faisant le plus petit client telnet ms voici ma source lol :

alias telnet { msg $me $+($chr(1),DCC) CHAT chat $longip( $1 ) $$2 }

Et oui c tout lol. Il suffit de taper /telnet ip port

Le seul inconvénient c kon est obligé d'être connecté pour pouvoir executer cette commande.
Mon astuce c'est d'utilisé le dcc chat pour créer un connection telent... voilou

Have fun
cs_SornDrixer
Messages postés
2087
Date d'inscription
jeudi 12 décembre 2002
Statut
Modérateur
Dernière intervention
30 janvier 2011
2 -
Voila un exemple pour la commande mail :

on 1:DIALOG:sok:sclick:3:{
if $gettok($did(2),1,32) == MAIL { mail ...... }
else { sockwrite -n opensok $did(2) }
$didsm(sok,1,2,$did(2))
}

Si MAIL est envoyé avec pour position le 1er mot (exemple si on envoie MAIL truc bidule bleh)
Alors on execute l'alias mail.
Ensuite à toi de te faire un alias mail permettant d'envoyer un mail à partir d'un serveur smtp que l'user peut définir dans la commande, par exemple :
MAIL smtp.leserveur.com expediteur recepteur contenu_du_mail

Et pour agir sur un dialog actuellement ouvert, je ne sais pas non plus comment faire, faudrait faire un tour sur mircscripts.org ou scriptsdb.org à la recherche d'un dll le permettant.
(Si tu aurais fais ton addon en picwin, tu n'aurais pas eu de problème ;P)
skotmarud
Messages postés
119
Date d'inscription
samedi 5 avril 2003
Statut
Membre
Dernière intervention
26 janvier 2008
-
j'ai pas trouver comment "créer" ou "modifier" "dynamiquement" un dialog. il faut une dll ? pke c'est possible de le faire du moment qu'on peut ajouter des tab dans le dialog alors qu'il est run.

pour les commandes j'ai toujours pas compris :$ dsl

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.