Mini telnet

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

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.