Calculatrice de crc simple en dialog

Soyez le premier à donner votre avis sur cette source.

Snippet vu 3 900 fois - Téléchargée 26 fois

Contenu du snippet

pour l'ouvrir il y a juste a tapper /dopen crccalc
si vous avez pas l'alias dopen la voicie:

alias dopen {
dialog -m $1 $1
}

Source / Exemple :


dialog crccalc {
  title "Crc Calculator"
  size -1 -1 348 83
  option dbu
  box "", 1, 4 4 337 64
  text "Fichier", 2, 10 15 25 8
  edit "", 3, 36 14 258 10
  button "Choisir", 4, 299 13 37 10
  button "Calculer", 5, 4 69 337 12
  text "Crc", 6, 10 30 25 8
  edit "", 7, 36 28 104 10
  text "Taille", 8, 9 43 25 8
  edit "", 9, 36 42 104 10
  button "Comparer", 10, 299 27 37 10
  text "Nom", 11, 143 30 14 8
  text "Créé", 12, 143 43 15 8
  edit "", 13, 159 29 135 10
  edit "", 14, 160 42 134 10
  button "Quiter", 15, 299 40 37 9
  text "Md5", 16, 9 55 25 8
  edit "", 17, 36 54 104 10
  button "Afficher", 18, 299 52 38 10
  text "Accedé", 19, 142 54 19 8
  edit "", 20, 161 54 133 10
  menu "Fichier", 21
  item "Executer", 22, 21
  item "Effacer", 23, 21
  item "Quitter", 24, 21
  menu "Autres", 25
  item "Aide", 26, 25
}
dialog laconfirmationalacon {
  title "Confirmation"
  size -1 -1 95 31
  option dbu
  box "", 1, 2 3 90 26
  button "Anuler", 2, 8 12 37 12
  button "Supprimer", 3, 48 12 37 12
}
on *:dialog:laconfirmationalacon:sclick:*:{
  if ($did == 3) {
    var %tmp $did(crccalc,3)
    if (%tmp == $null) { var %tmp = $$sfile($getdir,Selectioner le fichier a effacer) }
    if ($exists(%tmp) == $true) { 
      remove -b %tmp
      echo -a  $nopath(%tmp) a bien été effacé de votre disque dur 
    }
    else { echo -a %tmp N'esxiste pas: impossible de le suprimer }
  }
  if ($did == 2) { echo -a Le fichier $iif(%tmp != $null, $nopath(%tmp)) n'a pa été effacé }
  dialog -x $dname
}

on *:dialog:crccalc:init:*:{
  var %mdx $findfile($mircdir,mdx.dll,1)
  if (%mdx != $null) {
    dll %mdx SetMircVersion $version
    dll %mdx MarkDialog $dname
    dll %mdx SetDialog $dname style title
  }
  did -b $dname 10
}

on *:dialog:crccalc:menu:*:{
  if ($did == 23) { dialog -m laconfirmationalacon laconfirmationalacon }
  if ($did == 24) { dialog -x $dname }
  if ($did == 22) {
    var %tmp = $did($dname,3)
    if (%tmp != $null) && ($exists(%tmp) == $true) { run %tmp | echo 9 -a Runing %tmp }
    else { run $$sfile($getdir) }
  }
  if ($did == 26) { 
    var %tmp $findfile($mircdir,mirc.hlp,1)
    if ($exists(%tmp) == $true) { run %tmp }
    else { echo -a Mirc.hlp non trouvé dans $mircdir : impossible de lancer l'aide }
  }
}

on *:dialog:crccalc:sclick:*:{
  if ($did == 15) {
    unset %crcfile
    dialog -x $dname
  }
  if ($did == 18) {
    say $iif(c !isin $chan($chan).mode , 09) Info pour $nopath(%crcfile) $+ : Crc: $chr(91) $+ $did($dname,7) $+ $chr(93) $+ , Md5: $did($dname,17)
  }
  if ($did == 5) {
    if (%crcfile != $null) { 
      did -o $dname 7 1 $crc(%crcfile) 
      did -o $dname 9 1 $file(%crcfile).size Octets
      did -o $dname 13 1 $nopath(%crcfile)
      did -o $dname 14 1 $duration($calc($ctime - $file(%crcfile).ctime))
      did -o $dname 20 1 $duration($calc($ctime - $file(%crcfile).atime))
      did -o $dname 17 1 $md5(%crcfile,2)
      did -e $dname 10
    }
    else { echo -a Aucain fichier a identifier }
  }
  if ($did == 4) {
    set %crcfile $sfile($getdir)
    if (%crcfile != $null) { did -o $dname 3 1 %crcfile }
  }
  if ($did == 10) {
    var %comp1 $did($dname,17)
    var %comp2 $md5($sfile($getdir),2)
    if (%comp2 != $null) {
      if (%comp1 == %comp2) { echo -a Les 2 fichiers sonts identiques }
      else { echo -a Les 2 fichiers sonts differents }
    }
  }
}

Conclusion :


voila si vous avez des idées d'amelioration je suis ouvert :)

A voir également

Ajouter un commentaire

Commentaires

cs_KiNdErMaXi
Messages postés
1052
Date d'inscription
samedi 10 juillet 2004
Statut
Membre
Dernière intervention
30 novembre 2009
2
"Aucain fichier a identifier"
:|
lol
hisoka2501
Messages postés
266
Date d'inscription
lundi 19 mai 2003
Statut
Membre
Dernière intervention
7 juillet 2009

voila j'ai ajjouté 2/3 petites choses comme le Md5 et le fait de pouvoir comparer 2 fichier et savoir si il sonts oui ou non identiques ansi que des info conersan la date de creation et de dernier access au fichier
ChAnG-Fu
Messages postés
165
Date d'inscription
dimanche 2 novembre 2003
Statut
Membre
Dernière intervention
1 juillet 2006

hisoka2501 la CRC d'une file c'est un numéro qui change en fct de la taille et de ce la file contient

L'histoire de corompus c un moyen avec $crc, car lorsqu'on touche a une file la crc change automatiquement


7/10 bonne idée et pas vue sur le site
sinon c basic essaye de complété ca
samueldr
Messages postés
121
Date d'inscription
samedi 23 août 2003
Statut
Membre
Dernière intervention
3 juillet 2005

merci...
hisoka2501
Messages postés
266
Date d'inscription
lundi 19 mai 2003
Statut
Membre
Dernière intervention
7 juillet 2009

la crc c une série de chifres et de letres qui peremetes de vérifier si un fichier est corompus ou pas

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.