Batching creator v1.0 ( tout pour apprendre et créer )

Contenu du snippet

IMPORTANT : comme la taille du zip atteind près de 1 mo , j'ai du héberger le fichier ZIP ailleur . Voici 2 liens pour télécharger le script . Si vous tombez sur un lien mort , dite le moi.

http://www.ircland.250free.com/BatchCreator.zip
http://www.astro3d.250free.com/BatchCreator.zip

Ce script est un dériver d'un programme écrit en C/C++ déja existant . J'ai tout fait en mon possible pour intégrer le plus de fonction . Le résultat est super , j'espère que vous aimerez :)

Fonction du script :

Création , sauvegarde , chargement , compilation ( vers .com ) pour le batching
Aide par rappel de commande et par tutorial
Convertion du code vers le format HTML
Assistant de création de bordure , assistant pour xcopy/xcopy32

Ca peut se résumer as peu près a ca

Le compilateur ( bat2exec.com ) donc je me sert dans le script est écrit en asm. J'ai laisser la source . Vous pouvez vous en servir externe ( sans le script )

Je ne ferais de discours pour vous citez quesqu'un batch , mais je voulais quand même dire as ceux qui sont dans l'ignorance , que vous servir de ce qui suie peut grandement vous aider a vous débrouiller sur dos ou ms-dos .

Si vous avez des questions ou des commentaires ! laissez-les moi :)

Source / Exemple :


menu status,channel {
batching creator:/batching
                  }

on 1:load:{ intro } 

alias intro {
  if ( %taille != $null ) { goto cont1.intro }
  %taille = 4
  if ($exists(million/takeoff.wav)) { splay takeoff.wav }
  : cont1.intro
  window -BCdop +d @intro -1 -1 500 500
  drawfill -r @intro $rgb(0,0,0) $rgb(0,0,0) 0 0
  drawdot -r @intro $rgb(255,255,255) %taille 245 220
  if ( %taille > 180 ) { .timerintro off | splay stop | text1 }
  inc %taille 
  if ( %al.timer == 1 ) { halt }
  .timerintro -m 0 58 intro | %al.timer = 1
}  
alias text1 {
  drawpic @intro 53 115 crane1.jpg
  drawpic @intro 100 110 script.jpg | splay os.wav
  .timer -m 1 800 drawpic @intro 433 205 crane1.jpg
  .timer -m 1 800 drawpic @intro 150 190 par.jpg | .timer -m 1 800 splay os.wav
  .timer -m 1 1600 drawpic @intro 47 285 crane1.jpg 
  .timer -m 1 1600 drawpic @intro 100 264 dj328i.jpg | .timer -m 1 1600 splay os.wav 
  .timer -m 1 1600 set %ok.start 1
  .timer -m 1 1900 drawtext -ro @intro $rgb(255,255,255) comic 10 10 480 appuyez sur une touche pour continuer 
                   } 

on 1:keydown:@intro:*:{
  if ( %ok.start == 1 ) { close -s@intro | unset %ok.start | batching }
}

alias batching dialog -md batching batching
dialog batching {
  title "Batch creator"
  size -1 -1 302 262
  option dbu
  icon bat.ico , 0
  edit "", 1, 6 19 287 238, multi return autovs
  menu "fichier", 2
  item "Nouveau", 3, 2
  item "Ouvrir", 4, 2
  item "Enregistrer", 6, 2
  menu "Importer", 5, 2
  item "Copie de sauvegarde", 7, 5
  menu "Exporter", 8, 2
  item "Fichier html", 9, 8
  item "Compiler", 10, 2
  item "Imprimer", 11, 2
  item "configuration imprimante", 12, 2
  item "quitter", 13, 2 , ok
  menu "Edition", 14
  item "Coller", 16, 14
  item "Remplacer", 15, 14
  item "Option", 116, 14
  menu "Commandes", 17
  item "Créer / substituer une commande dos", 18, 17
  item "Executer silencieusement une commande dos", 19, 17
  menu "Affichage", 20, 17
  item "Effacer l'écran", 21, 20
  item "Afficher du texte", 22, 20
  item "Afficher ligne vide", 23, 20
  item "Echo local desactivé", 24, 20
  item "Echo local activé", 25, 20
  menu "Boucles et sauts", 26, 17
  item "Aller a une marque", 27, 26
  item "Insèrer une marque", 28, 26
  menu "Variables", 29, 17
  item "Affecter valeur a variable", 30, 29
  item "Effacer variable", 31, 29
  item "Décaler les variables d'environement", 32, 29
  item "Afficher les variables d'environement", 33, 29
  menu "Opération sur les fichiers", 34, 17
  menu "Dossiers", 35, 34
  item "Créer dossier", 36, 35
  item "Supprimer dossier", 37, 35
  item "Renommer", 38, 35
  item "Déplacer", 39, 35
  menu "Fichiers", 40, 34
  item "Supprimer fichier", 41, 40
  item "Renommer fichier", 42, 40
  item "Déplacer fichier", 43, 40
  item "Afficher contenue d'un fichier texte", 44, 40
  item "Imprimer fichier texte", 45, 40
  item "Copier fichier", 46, 40
  item "Tout supprimer", 47, 40
  item "Afficher les fichiers", 48, 40
  item "Reconstituer les fichier", 49, 40
  menu "Ecriture", 50, 34
  item "Ecrire dans un fichier (ajout)", 51, 50
  item "Ecrire dans un fichier (effacant ancien contenu) ", 52, 50
  item "Resultat d'une commande (ajout)", 53, 50
  item "Resultat d'une commande (effacant ancien contenu)", 54, 50
  menu "Lancer fichier", 55, 34
  item "Fichier batch comme sous-programme", 56, 55
  item "Fichier batch (passer la main)", 57, 55
  item "Interpreteur MS-DOS", 58, 55
  item "autre", 59, 55
  item "Répertoire racine", 60, 34
  item "Changer répertoire courant", 61, 34
  item "Format lecteur", 63, 34
  item "Test si un lecteur existe", 64, 34
  menu "Attributs des fichiers", 65, 17
  item "Interdire les modifications", 66, 65
  item "Permettre les modifications", 67, 65
  item "Invisible", 68, 65
  item "Visible", 69, 65
  item "Archive", 70, 65
  item "N'est pas une archive", 71, 65
  menu "Condition", 72, 17
  item "Si [condition] alors ... (IF)", 73, 72
  item "Si [condition] n'est pas ... alors (IF NOT)", 74, 72
  item "Si [qqchose] existe alors ...", 75, 72
  item "Si [qqchose] n'existe pas alors ...", 76, 72
  item "Si ERRORLEVEL = [qqchose] alors ...", 77, 72
  item "Si [condition] alors ... (IF) - (Win NT)", 78, 72
  item "Si [variable d'environement existe] alors ...  (Win NT)", 79, 72
  menu "Réseau", 80, 17
  item "Voir les ressources réseau", 81, 80
  item "Voir les ressources partagées d'un poste", 82, 80
  item "Monter un disque réseau comme disque local", 83, 80
  item "Déconnecter un disque réseau", 84, 80
  item "Ping sur domaine", 85, 80
  item "Ouvrir une page web avec IE", 86, 80
  item "Ouvrir FTP", 87, 80
  menu "Fonctions speciales", 88, 17
  item "Insèrer un commentaire", 89, 88
  item "Pause", 90, 88
  item "Activer break", 91, 88
  item "Eteindre l'ordinateur ( Win 9.x )", 92, 88
  item "Eteindre l'ordinateur ( Win NT , 2K , XP)", 93, 88
  item "Modifier path", 94, 88
  item "Temporisation", 95, 88
  item "Beep constant", 97, 88
  item "Couleurs de la fenêtre (Wint NT)", 98, 88
  item "Configurer le titre de la fenêtre (WinNT)", 99, 88
  item "Version DOS", 101, 88
  menu "Assistants", 102
  item "Assistant nouveau batch", 103, 102
  item "Créateur de copies", 104, 102
  item "Créateur de bordure", 105, 102
  item "Boucle For", 107, 102
  menu "Programme", 108
  item "Console MS DOS", 109, 108
  menu "Test", 110, 108
  item "Du fichier courant", 111, 110
  item "D'un fichier enregistrer", 112, 110
  menu "Aide", 113
  item "Tutorial", 114, 113
  item "A propos", 115, 113
} 

alias option dialog -md option option
dialog option {
  title "Option batching creator"
  size -1 -1 127 173
  option dbu
  icon bat.ico , 0
  box "Son", 1, 3 8 50 22
  radio "On", 2, 6 16 18 10
  radio "Off", 3, 30 16 20 10
  edit "", 5, 9 48 54 11, autohs
  box "Titre de la page", 6, 7 40 58 24
  box "Couleur fond", 7, 7 65 58 24
  edit "#HEXA", 8, 9 73 54 11, limit 7
  button "...", 9, 67 75 19 9
  box "Taille du texte", 4, 7 92 58 24
  edit "1 a 7", 10, 9 100 54 11, limit 7
  box "Couleur du texte", 11, 7 119 58 24
  edit "#HEXA", 12, 9 127 54 11, limit 7
  button "...", 13, 67 129 19 9
  check "Bold", 14, 67 95 25 10
  check "Italic", 15, 67 106 25 10
  box "Html", 16, 3 32 117 121
  button "Ok", 17, 46 157 27 11 , ok
}

alias compilation dialog -md compilation compilation
dialog compilation {
  title "compilation"
  size -1 -1 127 102
  option dbu
  icon bat.ico , 0
  text " ATTENTION :  C'EST COMMANDES NE        SONT PAS PRIE EN CHARGE PAR LE                          COMPILATEUR", 1, 12 13 99 23
  text " CHOICE                                        EXIT", 2, 12 42 78 15
  check "Lancer le répertoire après compilation", 3, 11 65 110 10
  button "compilez", 4, 43 85 32 12
}

alias erreur.print dialog -md erreur.print erreur.print
dialog erreur.print {
  title "Imprimante introuvable"
  size -1 -1 127 86
  option dbu
  icon bat.ico , 0
  text " AUCUNE IMPRIMANTE N'AS ETE                TROUVER SUR VOTRE SYSTEME                                                                                   ASSURER VOUS QUELLE SOIE                    BIEN CONNECTER ET INSTALLER", 1, 12 15 100 41
  button "Ok", 2, 42 68 26 11, ok
}

alias remplacer dialog -md remplacer remplacer
dialog remplacer {
  title "Remplacer"
  size -1 -1 127 95
  option dbu
  icon bat.ico , 0
  box "Remplacer", 1, 4 15 119 50
  edit "ici le texte déja écrit", 2, 8 27 97 11, autohs
  edit "ici le texte qui doit être écrit", 3, 8 48 97 11, autohs
  button "Go", 4, 41 77 27 11
}

alias assis.new.batch dialog -md assis.new.batch assis.new.batch
dialog assis.new.batch {
  title "assistant nouveau batch"
  size -1 -1 202 232
  option dbu
  icon bat.ico, 0
  box "Préférance", 1, 5 7 191 93
  check "Désactiver l'écho local", 2, 12 22 70 10
  check "Effacer l'écran", 3, 12 38 47 10
  edit "", 4, 11 66 178 25, multi return
  text " Description :", 5, 12 57 39 8
  box "Windows NT", 6, 6 103 190 94
  check "Utiliser les options de personnalitsation NT", 7, 12 118 114 10
  text " Titre de la console :", 8, 12 135 50 8
  edit "", 9, 66 133 97 11, autohs limit 50
  combo 10, 66 152 60 39, size vsbar drop
  text " Couleur de fond :", 11, 12 153 50 8
  combo 12, 66 175 60 39, size vsbar drop
  text " Couleur du texte :", 13, 12 177 50 8
  button "Annuler", 14, 51 211 35 11 , cancel
  button "Créer", 15, 97 211 35 11 , ok
}

alias about dialog -md about about
dialog about {
  title "a propos de batch creator"
  size -1 -1 124 53
  option dbu
  icon bat.ico , 0
  text "  Auteur : dj328i ( dj328i@hotmail.com )", 1, 3 13 104 8
  text "  Version : V1.0", 2, 3 27 57 8
  text " Batch Creator V1.0", 3, 68 44 52 8
}

alias assis.copy dialog -md assis.copy assis.copy
dialog assis.copy {
  title "Assistant créateur de copies"
  size -1 -1 201 210
  option dbu
  icon bat.ico, 0
  text " Chemin source : ", 1, 6 20 42 8
  edit "", 2, 51 18 119 11
  button "...", 3, 174 20 20 8
  text " Chemin cible :", 4, 6 39 42 8
  edit " ", 5, 51 37 119 11
  button " ...", 6, 174 39 20 8
  box "Paramètres", 7, 6 60 189 124
  check "Utiliser XCOPY32 plutot que XCOPY ( non compatible avec xp )", 8, 12 71 163 10
  check "Copier répertoire et sous-répertoire , même vide", 9, 12 83 130 10
  check "Appuyez sur une touche pour lancer la copie", 10, 12 95 120 10
  check "Continuer la copie , même en cas d'erreur", 11, 12 107 113 10
  check "Ne pas afficher le nom des fichiers pendant la copie", 12, 12 119 135 10
  check "Copier avec les noms cours générés", 13, 12 131 100 10
  check "Avertir avant l'écrasement des fichiers", 14, 12 143 106 10
  check "Copier également les fichiers système ou cachés", 15, 12 155 133 10
  check "Ne copier aucun fichier , juste créer l'arborescence", 16, 12 167 135 10
  button "Annuler", 17, 120 193 33 11, cancel
  button "Créer", 18, 164 193 33 11, ok
}

on 1:dialog:assis.copy:sclick:3:{ 
%file.source.copy = $sdir(c:\) | did -ra assis.copy 2 %file.source.copy | unset %file.source.copy }
on 1:dialog:assis.copy:sclick:6:{ 
%file.cible.copy = $sdir(c:\) | did -ra assis.copy 5 %file.cible.copy | unset %file.cible.copy }

on 1:dialog:assis.copy:sclick:8:{
if ( $os == xp ) { did -u assis.copy 8 | halt }
if ( %copy.menu.8 != $null ) { unset %copy.menu.8 | halt }
%copy.menu.8 = 1   }

on 1:dialog:assis.copy:sclick:9:{
if ( %copy.menu.9 != $null ) { unset %copy.menu.9 | halt }
%copy.menu.9 = 1   }

on 1:dialog:assis.copy:sclick:10:{
if ( %copy.menu.10 != $null ) { unset %copy.menu.10 | halt }
%copy.menu.10 = 1   }

on 1:dialog:assis.copy:sclick:11:{
if ( %copy.menu.11 != $null ) { unset %copy.menu.11 | halt }
%copy.menu.11 = 1   }

on 1:dialog:assis.copy:sclick:12:{
if ( %copy.menu.12 != $null ) { unset %copy.menu.12 | halt }
%copy.menu.12 = 1   }

on 1:dialog:assis.copy:sclick:13:{
if ( %copy.menu.13 != $null ) { unset %copy.menu.13 | halt }
%copy.menu.13 = 1   }

on 1:dialog:assis.copy:sclick:14:{
if ( %copy.menu.14 != $null ) { unset %copy.menu.14 | halt }
%copy.menu.14 = 1   }

on 1:dialog:assis.copy:sclick:15:{
if ( %copy.menu.15 != $null ) { unset %copy.menu.15 | halt }
%copy.menu.15 = 1   }

on 1:dialog:assis.copy:sclick:16:{
if ( %copy.menu.16 != $null ) { unset %copy.menu.16 | halt }
%copy.menu.16 = 1   }

on 1:dialog:assis.copy:sclick:18:{
if ( $did(assis.copy,2) == $null || $did(assis.copy,5) == $null ) { halt }
if ( %copy.menu.8 == 1 ) { %copy.long = xcopy32 $did(assis.copy,2) $did(assis.copy,5) | goto cont1.assis.copy }
%copy.long = xcopy $did(assis.copy,2) $did(assis.copy,5)
: cont1.assis.copy
if ( %copy.menu.9 == 1 ) { %copy.long = %copy.long $+ ? $+ /S $+ ? $+ /E }  
if ( %copy.menu.10 == 1 ) { %copy.long = %copy.long $+ ? $+ /W }
if ( %copy.menu.11 == 1 ) { %copy.long = %copy.long $+ ? $+ /C }
if ( %copy.menu.12 == 1 ) { %copy.long = %copy.long $+ ? $+ /Q }
if ( %copy.menu.13 == 1 ) { %copy.long = %copy.long $+ ? $+ /H }
if ( %copy.menu.14 == 1 ) { %copy.long = %copy.long $+ ? $+ /T }
if ( %copy.menu.15 == 1 ) { %copy.long = %copy.long $+ ? $+ /N }
if ( %copy.menu.16 == 1 ) { %copy.long = %copy.long $+ ? $+ /-Y }
if ( $pos( %copy.long , $chr(63)) != $null ) { %copy.long = $replace( %copy.long ,$chr(63),$chr(32)) }
did -a batching 1 %copy.long
unset %copy.long , %copy.menu.8 , %copy.menu.9 , %copy.menu.10 , %copy.menu.11 , %copy.menu.12
unset %copy.menu.13 , %copy.menu.14 , %copy.menu.15     
                                          }

on 1:dialog:assis.new.batch:init:0:{
did -a assis.new.batch 10 0 - Noir
did -a assis.new.batch 10 1 - Bleu foncé
did -a assis.new.batch 10 2 - Vert
did -a assis.new.batch 10 3 - Bleu-gris
did -a assis.new.batch 10 4 - Marron
did -a assis.new.batch 10 5 - Pourpre
did -a assis.new.batch 10 6 - Kaki
did -a assis.new.batch 10 7 - Gris clair
did -a assis.new.batch 10 8 - Gris
did -a assis.new.batch 10 9 - Bleu clair
did -a assis.new.batch 10 A - Vert clair
did -a assis.new.batch 10 B - Cyan
did -a assis.new.batch 10 C - Rouge
did -a assis.new.batch 10 D - Rose
did -a assis.new.batch 10 E - Jaune
did -a assis.new.batch 10 F - Blanc
did -a assis.new.batch 12 0 - Noir
did -a assis.new.batch 12 1 - Bleu foncé
did -a assis.new.batch 12 2 - Vert
did -a assis.new.batch 12 3 - Bleu-gris
did -a assis.new.batch 12 4 - Marron
did -a assis.new.batch 12 5 - Pourpre
did -a assis.new.batch 12 6 - Kaki
did -a assis.new.batch 12 7 - Gris clair
did -a assis.new.batch 12 8 - Gris
did -a assis.new.batch 12 9 - Bleu clair
did -a assis.new.batch 12 A - Vert clair
did -a assis.new.batch 12 B - Cyan
did -a assis.new.batch 12 C - Rouge
did -a assis.new.batch 12 D - Rose
did -a assis.new.batch 12 E - Jaune
did -a assis.new.batch 12 F - Blanc         
unset %assis.echo.on , %assis.cls.on
}

on 1:dialog:assis.new.batch:sclick:2:{
if ( %assis.echo.on != $null ) { unset %assis.echo.on | halt }
%assis.echo.on = 1     }

on 1:dialog:assis.new.batch:sclick:3:{
if ( %assis.cls.on != $null ) { unset %assis.cls.on | halt }
%assis.cls.on = 1     }

on 1:dialog:assis.new.batch:sclick:7:{  
if ( $os != XP && $os != 2K && $os != NT ) { did -u assis.new.batch 7 | halt } 
if ( %assis.nt.perso != $null ) { unset %assis.nt.perso | halt }
%assis.nt.perso = 1
}

on 1:dialog:assis.new.batch:sclick:15:{
if ( $did(assis.new.batch,2) == $null || $did(assis.new.batch,3) == $null || $did(assis.new.batch,4) == $null || %assis.nt.perso != 1 ) { halt }
%assis.create.file = $r(a,z) $+ $r(a,z) $+ $r(1,9) $+ .txt
if ( %assis.echo.on != $null ) { write %assis.create.file @echo off | unset %assis.echo.on }
if ( $did(assis.new.batch,4) != $null ) { 
write %assis.create.file REM --------------------------------------------------------
write %assis.create.file REM description : $did(assis.new.batch,4)
write %assis.create.file REM --------------------------------------------------------  }
if ( %assis.nt.perso != 1 ) { goto end1.assis.nb }
if ( $did(assis.new.batch,9) != $null ) { write %assis.create.file title $did(assis.new.batch,9) }
if ( $did(assis.new.batch,10).seltext != $null ) { %color.temp.10 = $left($did(assis.new.batch,10).seltext,1) }
if ( $did(assis.new.batch,12).seltext != $null ) { verif.color.10 | goto end1.assis.nb.15 }
if ( %color.temp.10 != $null ) { write %assis.create.file color %color.temp.10 | unset %color.temp.10 }         
: end1.assis.nb.15
write %assis.create.file REM entrer votre code ici
if ( %assis.cls.on != $null ) { write %assis.create.file cls | unset %assis.cls.on }
loadbuf 1- $+ $lines( %assis.create.file ) -or batching 1 %assis.create.file
if ( $did(assis.new.batch,9) != $null ) { dialog -t batching Batch creator - $did(assis.new.batch,9) }
.timer 1 2 .remove %assis.create.file
.timer 1 3 unset %assis.create.file , %assis.nt.perso , %assis.echo.on , %assis.cls.on 
}

alias verif.color.10 {
if ( %color.temp.10 != $null ) { 
write %assis.create.file color %color.temp.10 $+ $left($did(assis.new.batch,12).seltext,1) | unset %color.temp.10 | goto end1.ver.col.10 }
write %assis.create.file color $left($did(assis.new.batch,12).seltext,1)     
: end1.ver.col.10
}

on 1:dialog:compilation:init:0:{ unset %rep.compil }

on 1:dialog:compilation:sclick:3:{
if ( %rep.compil != $null ) { unset %rep.compil | halt }
%rep.compil = 1
                         }

on 1:dialog:compilation:sclick:4:{
run bat2exec.com %dest.compil
if ( %rep.compil == 1 ) { run $nofile( %dest.compil ) }
unset %dest.compil , %rep.compil
                                  } 

on 1:dialog:option:init:0:{
if ( %title.html != $null ) { did -ra option 5 %title.html }
if ( %bg.html != $null ) { did -ra option 8 %bg.html }
if ( %taille.html != $null ) { did -ra option 10 %taille.html }
if ( %font.html != $null ) { did -ra option 12 %font.html }
unset %bold.html , %italic.html      
}

on 1:dialog:option:sclick:2:{ %allow.mus = on }
on 1:dialog:option:sclick:3:{ %allow.mus = off }
on 1:dialog:option:sclick:14:{ 
if ( %bold.html != $null ) { unset %bold.html | halt }
%bold.html = 1 }
on 1:dialog:option:sclick:15:{ 
if ( %italic.html != $null ) { unset %italic.html | halt }
%italic.html = 1 }

on 1:dialog:option:sclick:17:{
if ( $did(option,5) != $null ) { %titre.html = $replace($did(option,5),$chr(32),e) }
if ( $did(option,8) != $null && $did(option,8) != #HEXA && $left($did(option,8),1) == $chr(35) && $len($did(option,8)) == 7 ) { %bg.html = $did(option,8) }  
if ( $did(option,10) != $null && $did(option,10) != 1 a 7 && isnum && $did(option,10) <= 7 ) { %taille.html = $did(option,10) } 
if ( $did(option,12) != $null && $did(option,12) != #hexa && $left($did(option,12),1) == $chr(35) && $len($did(option,12)) == 7 ) { %font.html = $did(option,12) }
if ( %wr.file == 1 ) { to.html | unset %wr.file } 
verif.mus
}

on 1:dialog:option:close:0:{ unset %wr.file }
on 1:dialog:option:sclick:9:{ convertion }
on 1:dialog:option:sclick:13:{ convertion }

alias verif.mus {
if ( %allow.mus == $null || %allow.mus == on ) { splay tic.wav } } 

on 1:dialog:batching:menu:3:{ verif.mus | did -r batching 1 | dialog -t batching Batch creator }

on 1:dialog:batching:menu:4:{ 
verif.mus
%open = $sfile(c:\*.bat)
if ( %open == $null ) { did -a batching 1 Paramètre insuffisant | unset %open | halt }
if ( $lines( %open ) == 0 ) { did -a batching 1 Fichier non écrit ou corrompue | unset %open | halt }
loadbuf 1- $+ $lines( %open ) -or batching 1 %open | dialog -t batching Batch creator - $nopath( %open ) | unset %open
                    } 

on 1:dialog:batching:menu:6:{
verif.mus
if ( $did(batching,1) == $null ) { halt }
%save.file = $sdir(c:\)
if ( %save.file == $null ) { did -a batching 1 Paramètre insuffisant | unset %save.file | halt }
%name.file = $$?="quelle nom voulez-vous donner a votre fichier ?"
if ( %name.file == $null ) { did -a batching 1 Paramètre insuffisant | unset %name.file | halt }
%lines.save = $did(batching,1).lines | %lines.save1 = 1
: cont1.menu.6
while ( %lines.save1 <= %lines.save ) {
write %save.file $+ %name.file $+ .bat $did(batching,1, %lines.save1 ) | inc %lines.save1
goto cont1.menu.6 }
dialog -t batching Batch creator - %name.file $+ .bat | run %save.file | unset %save.file , %name.file , %lines.save , %lines.save1 
   }

on 1:dialog:batching:menu:7:{
verif.mus
%backup.file = $sfile(c:\*.bat)
if ( %backup.file == $null ) { did -a batching 1 Paramètre insuffisant | unset %backup.file | halt }
.copy -o %backup.file %backup.file $+ .bak | unset %backup.file
           }

on 1:dialog:batching:menu:116:{ verif.mus | option } 

alias convertion dialog -md convertion convertion
  dialog convertion {
  title "Rgb to Html"
  size -1 -1 147 164
  option dbu
  icon bat.ico , 0
  edit "", 1, 11 31 50 11
  box "Rouge", 2, 8 23 57 23
  box "Vert", 3, 81 23 57 23
  edit "", 4, 84 31 50 11
  box "Bleue", 5, 45 58 57 23
  edit "", 6, 48 66 50 11
  box "RGB", 7, 4 15 140 80
  box "Resultat", 8, 45 112 57 23
  edit "", 9, 48 120 50 11
  button "Convertion", 10, 54 146 37 12
}  

alias erreur dialog -md erreur erreur
dialog erreur {
  title "erreur valeur rgb"
  size -1 -1 143 87
  option dbu
  text "                             ERREUR                                                                                                                          LES VALEURS RGB NE PEUVENT                          PAS EXCEDER 255 OU ETRE EN                                      DESSOUS DE 0", 1, 13 6 113 43
  button "fermer", 2, 50 61 33 11, cancel
}  

on 1:dialog:convertion:sclick:10:{
if ( $did(convertion,1) > 255 || $did(convertion,4) > 255 || $did(convertion,6) > 255 || $did(convertion,1) < 0 || $did(convertion,4) < 0 || $did(convertion,6) < 0 ) {
beep 1 | erreur | halt }  
if ( $did(convertion,1) == $null || $did(convertion,4) == $null || $did(convertion,6) == $null ) { 
beep 1 | erreur | halt }    
if ( $did(convertion,9) != $null ) { halt }
did -a convertion 9 $chr(35) $+ $readini(couleur.ini,couleur,$did(convertion,1)) $+ $readini(couleur.ini,couleur,$did(convertion,4)) $+ $readini(couleur.ini,couleur,$did(convertion,6)) 
dialog -i convertion
window -dpk0 @couleur.preview -1 -1 350 350  
drawfill -r @couleur.preview $rgb($did(convertion,1),$did(convertion,4),$did(convertion,6)) $rgb($did(convertion,1),$did(convertion,4),$did(convertion,6)) 0 0
 } 

on 1:dialog:batching:menu:9:{ to.html }    

alias to.html {
if ( %titre.html == $null && %taille.html == $null && %bg.html == $null && %font.html == $null ) { option | %wr.file = 1 | halt }
%dest.html = $sdir(c:\)
if ( %dest.html == $null || $did(batching,1) == $null ) { did -a batching 1 Paramètre insuffisant | unset %dest.html | halt }
write %dest.html $+ %titre.html $+ .html <html><head><title> $+ %titre.html $+ </title></head>
write %dest.html $+ %titre.html $+ .html <body bgcolor=" $+ %bg.html $+ "><font size= $+ %taille.html color=" $+ %font.html $+ ">  
if ( %bold.html == 1 ) { write %dest.html $+ %titre.html $+ .html <b> }
if ( %italic.html == 1 ) { write %dest.html $+ %titre.html $+ .html <i> }
write %dest.html $+ %titre.html $+ .html <br><br>
%lines.html = $did(batching,1).lines | %lines.html1 = 1
: cont1.html
while ( %lines.html1 <= %lines.html ) {
write %dest.html $+ %titre.html $+ .html $did(batching,1, %lines.html1 ) <br> | inc %lines.html1
goto cont1.html }
run %dest.html | unset %dest.html  }

on 1:dialog:batching:menu:10:{
%dest.compil = $sfile(c:\*.bat)
if ( %dest.compil == $null ) { did -a batching 1 Paramètre insuffisant | unset %dest.compil | halt }
compilation }

alias print1 { 
.comopen LL WScript.Shell 
if !$comerr { var %b = $com(LL,RegRead,3,bstr,HKEY_CURRENT_USER\Printers\DeviceOld),%res = $com(LL).result 
.comclose LL | return %res } | return } 

on 1:dialog:batching:menu:11:{ 
if ( $did(batching,1) == $null ) { did -a batching 1 Aucun texte a imprimer | halt }
if ( $print1 == $null ) { erreur.print | halt }
%lines.print = $did(batching,1).lines | %lines.print1 = 1 | %name.file.print = $r(a,z) $+ $r(a,z) $+ $r(a,z) $+ .txt
: cont1.print
while ( %lines.print1 <= %lines.print ) {
write c:\ $+ %name.file.print $did(batching,1, %lines.print1 ) | inc %lines.print1
goto cont1.print }
unset %lines.print1 , %lines.print
%print.file = $r(a,z) $+ $r(1,9) $+ $r(a,z) $+ .bat
write %print.file @echo off
write %print.file print c:\ $+ %name.file.print
write %print.file cls
.timer 1 1 run %print.file
.timer 1 5 .remove c:\ $+ %name.file.print | .timer 1 2 .remove %print.file  
.timer 1 6 unset %print.file , %name.file.print  
}

on 1:dialog:batching:menu:12:{
if ( $print1 == $null ) { erreur.print | halt }
run rundll32 printui.dll,PrintUIEntry /p /n " $+ $left($print1,$calc($pos($replace($print1,$chr(44),kbl),kbl,1) -1)) $+ "
                 }

on 1:dialog:batching:menu:16:{
if ( $cb(0).len == $null ) { halt }
%lines.cb = $cb(0) | %lines.cb1 = 1
: cont1.cb
while ( %lines.cb1 <= %lines.cb ) {
did -a batching 1 $cb( %lines.cb1 ) | inc %lines.cb1
goto cont1.cb }
unset %lines.cb1 , %lines.cb
                      }

on 1:dialog:batching:menu:15:{ remplacer }

on 1:dialog:remplacer:sclick:4:{
if ( $did(remplacer,2) == $null || $did(remplacer,3) == $null ) { halt }
%lines.remp = $did(batching,1).lines | %lines.remp1 = 1 | %name.remp = $r(a,z) $+ $r(a,z) $+ $r(a,z) $+ .txt
: cont1.remp
while ( %lines.remp1 <= %lines.remp ) {
write c:\ $+ %name.remp $replace($did(batching,1, %lines.remp1 ),$did(remplacer,2),$did(remplacer,3)) | inc %lines.remp1
goto cont1.remp }
loadbuf 1- $+ %lines.remp -or batching 1 c:\ $+ %name.remp 
.remove c:\ $+ %name.remp | unset %name.remp , %lines.remp1 , %lines.remp
                                      }

on 1:dialog:batching:menu:18:{
did -a batching 1 doskey [COMMANDE]=[SUBSTITUTION]
  }

on 1:dialog:batching:menu:19:{
did -a batching 1 [commande]>nul
  } 

on 1:dialog:batching:menu:21:{
did -a batching 1 cls
  }

on 1:dialog:batching:menu:22:{
did -a batching 1 echo
  }

on 1:dialog:batching:menu:23:{
did -a batching 1 echo.
  }

on 1:dialog:batching:menu:24:{
did -a batching 1 @echo off
  }

on 1:dialog:batching:menu:25:{
did -a batching 1 @echo on
  }

on 1:dialog:batching:menu:27:{
did -a batching 1 goto
  } 

on 1:dialog:batching:menu:28:{
did -a batching 1 :
  } 

on 1:dialog:batching:menu:30:{
did -a batching 1 set Variable=[VALEUR]
  } 

on 1:dialog:batching:menu:31:{
did -a batching 1 set Variable=
  } 

on 1:dialog:batching:menu:32:{
did -a batching 1 shift
  } 

on 1:dialog:batching:menu:33:{
did -a batching 1 set
  } 

on 1:dialog:batching:menu:36:{
did -a batching 1 md [NOM_DU_REPERTOIRE]
  } 

on 1:dialog:batching:menu:37:{
did -a batching 1 rd [NOM_DU_REPERTOIRE]
  } 

on 1:dialog:batching:menu:38:{
did -a batching 1 ren [Repertoire1] [Repertoire2]
  }   

on 1:dialog:batching:menu:39:{
did -a batching 1 move [Repertoire1] [Repertoire1]
  }

on 1:dialog:batching:menu:41:{
did -a batching 1 del [NOM_DU_FICHIER]
  }

on 1:dialog:batching:menu:42:{
did -a batching 1 ren [FICHIER1] [FICHIER2]
  }

on 1:dialog:batching:menu:43:{
did -a batching 1 move [FICHIER1] [FICHIER2]
  } 

on 1:dialog:batching:menu:44:{
did -a batching 1 type [FICHIER]
  } 

on 1:dialog:batching:menu:45:{
did -a batching 1 type [FICHIER]>lpt1
  } 

on 1:dialog:batching:menu:46:{
did -a batching 1 copy [FICHIER1] [FICHIER2]
  } 

on 1:dialog:batching:menu:47:{
did -a batching 1 del *.*
  }  

on 1:dialog:batching:menu:48:{
did -a batching 1 dir *.*
  } 

on 1:dialog:batching:menu:49:{
did -a batching 1 copy /b fichier1.txt + fichier2.txt nouveau.txt>nul
  } 

on 1:dialog:batching:menu:51:{
did -a batching 1 echo [Données]>>[FICHIER]
  } 

on 1:dialog:batching:menu:52:{
did -a batching 1 echo [Données]>[FICHIER]
  } 

on 1:dialog:batching:menu:53:{
did -a batching 1 COMMANDE>>[FICHIER]
  } 

on 1:dialog:batching:menu:54:{
did -a batching 1 COMMANDE>[FICHIER]
  } 

on 1:dialog:batching:menu:56:{
did -a batching 1 call [FICHIER]
  } 

on 1:dialog:batching:menu:57:{
did -a batching 1 [FICHIER]
  } 

on 1:dialog:batching:menu:58:{
did -a batching 1 $chr(37) $+ comspec $+ $chr(37)
  } 

on 1:dialog:batching:menu:59:{
did -a batching 1 start [FICHIER]
  } 

on 1:dialog:batching:menu:60:{
did -a batching 1 cd\
  }

on 1:dialog:batching:menu:61:{
did -a batching 1 cd [CHEMIN]
  }

on 1:dialog:batching:menu:63:{
did -a batching 1 format [LECTEUR]
  }

on 1:dialog:batching:menu:64:{
did -a batching 1 if exist [LECTEUR]:\NUL goto LABEL
  }

on 1:dialog:batching:menu:66:{
did -a batching 1 Attrib +r [FICHIER]
  }

on 1:dialog:batching:menu:67:{
did -a batching 1 Attrib -r [FICHIER]
  } 

on 1:dialog:batching:menu:68:{
did -a batching 1 Attrib +h [FICHIER]
  } 

on 1:dialog:batching:menu:69:{
did -a batching 1 Attrib -h [FICHIER]
  } 

on 1:dialog:batching:menu:70:{
did -a batching 1 Attrib +a [FICHIER]
  } 

on 1:dialog:batching:menu:71:{
did -a batching 1 Attrib -a [FICHIER]
  } 

on 1:dialog:batching:menu:73:{
did -a batching 1 $chr(105) $+ $chr(102) " $+ $chr(37) $+ VARIABLE%"=="VALEUR" $chr(91) $+ COMMANDE $+ $chr(93)
  } 

on 1:dialog:batching:menu:74:{
did -a batching 1 $chr(105) $+ $chr(102) not " $+ $chr(37) $+ VARIABLE%"=="VALEUR" $chr(91) $+ COMMANDE $+ $chr(93) 
  } 

on 1:dialog:batching:menu:75:{
did -a batching 1 $chr(105) $+ $chr(102) exist "FICHIER" $chr(91) $+ COMMANDE $+ $chr(93) 
  } 

on 1:dialog:batching:menu:76:{
did -a batching 1 $chr(105) $+ $chr(102) not exist "FICHIER" $chr(91) $+ COMMANDE $+ $chr(93) 
  } 

on 1:dialog:batching:menu:77:{
did -a batching 1 $chr(105) $+ f errorlevel 255 $chr(103) $+ oto LABEL "Remplacez 255 par la bonne valeur"
  } 

on 1:dialog:batching:menu:78:{
%name.file.menu.78 = $r(a,z) $+ $r(a,z) $+ $r(a,z) $+ .txt
write %name.file.menu.78 $chr(105) $+ f "%Variable%"=="Valeur" $chr(40)
write %name.file.menu.78 REM - Entrez ici le code si la condition est vraie
write %name.file.menu.78 REM - Vous pouvez entrer du code sur plusieures lignes
write %name.file.menu.78 $chr(41) else $chr(40)
write %name.file.menu.78 REM - Entrez ici le code si la condition est fausse
write %name.file.menu.78 Vous pouvez entrer du code sur plusieures lignes
write %name.file.menu.78 $chr(41) 
.timer -m 1 200 loadbuf 1-7 -or batching 1 %name.file.menu.78
.timer 1 1 .remove %name.file.menu.78 | .timer -m 1 1500 unset %name.file.menu.78
                                 } 

on 1:dialog:batching:menu:79:{ 
did -a batching 1 $chr(105) $+ f defined Variable_environnement [Commande]
   } 

on 1:dialog:batching:menu:81:{ 
did -a batching 1 net view
   } 

on 1:dialog:batching:menu:82:{ 
did -a batching 1 net view [\\POSTE]
   } 

on 1:dialog:batching:menu:83:{ 
did -a batching 1 net use [Disque:] [\\POSTE\DOMAINE]  
                }

on 1:dialog:batching:menu:84:{ 
did -a batching 1 net use [disque:] /DELETE  
                }

on 1:dialog:batching:menu:85:{ 
did -a batching 1 ping [domaine] 
                }

on 1:dialog:batching:menu:86:{ 
did -a batching 1 start explorer "[URL]"
                }

on 1:dialog:batching:menu:87:{ 
did -a batching 1 ftp -n [Adresse FTP]
                }

on 1:dialog:batching:menu:89:{ 
did -a batching 1 REM
                } 

on 1:dialog:batching:menu:90:{ 
did -a batching 1 pause>nul
                } 

on 1:dialog:batching:menu:91:{ 
did -a batching 1 break on
                }

on 1:dialog:batching:menu:92:{ 
did -a batching 1 %chr(37) $+ windir%\RUNDLL32.EXE User.exe,ExitWindows
                }

on 1:dialog:batching:menu:93:{ 
did -a batching 1 shutdown.exe -s -t 1
                }

on 1:dialog:batching:menu:94:{ 
did -a batching 1 $chr(37) $+ PATH%=%PATH%;[CHEMIN_A_AJOUTER]
                }

on 1:dialog:batching:menu:95:{ 
did -a batching 1 choice /t:o,5>nul "Remplacez "5" par le délai en secondes de votre choix"
                }

on 1:dialog:batching:menu:97:{ 
did -a batching 1 choice /N < nul
                }

on 1:dialog:batching:menu:98:{ 
did -a batching 1 color 9f "EM - Le premier chiffre correspond à la couleur de fond, et le second à celui de premier plan REM 8 = Gris, 9 = Bleu, A = Vert, B = Cyan, C = Rouge, D = Rose, E = Jaune, F = Blanc REM 0 = Noir, 1 = Bleu foncé, 2 = Vert, 3 = Bleu-gris, 4 = Marron, 5 = Pourpre, 6 = Kaki, 7 = Gris clair"
                } 

on 1:dialog:batching:menu:99:{
did -a batching 1 title [entrez ici le nom de la session]
              }

on 1:dialog:batching:menu:101:{
did -a batching 1 ver              
          }

on 1:dialog:batching:menu:103:{ assis.new.batch | verif.mus }
on 1:dialog:batching:menu:104:{ assis.copy | verif.mus }
on 1:dialog:batching:menu:105:{ bordure | verif.mus }

alias bordure dialog -md bordure bordure
dialog bordure {
  title "Créateur de bordure"
  size -1 -1 222 119
  option dbu
  icon bat.ico , 0
  box "Outils de création", 1, 5 15 214 81
  edit "", 11, 65 28 149 49, multi return autovs
  radio "Style bordures doubles", 12, 35 82 68 10
  radio "Style bordures simples", 2, 108 82 65 10
  button "Annuler", 3, 145 104 30 11 , cancel
  button "Créer", 4, 184 104 30 11 , ok
  icon 5, 8 28 51 46, bord1.jpg, 0
               } 

on 1:dialog:bordure:close:0:{ unset %bord.style } 
on 1:dialog:bordure:sclick:12:{ %bord.style = double }
on 1:dialog:bordure:sclick:2:{ %bord.style = simple }

on 1:dialog:bordure:sclick:4:{
if ( $did(bordure,11) == $null || $did(bordure,11) !isnum || %bord.style == $null || $pos($did(bordure,11),0) != $null ) { halt }
if ( %bord.style == double ) { did -a batching 1 echo $replace($did(bordure,11),1,É,2,Í,3,»,4,º,5,$chr(32),6,º,7,È,8,Í,9,O) }
if ( %bord.style == simple ) { did -a batching 1 echo $replace($did(bordure,11),1,Ú,2,Ä,3,¿,4,³,5,$chr(32),6,³,7,À,8,Ä,9,Ù) }
              }

on 1:dialog:batching:menu:107:{ 
%nb1 = $$?="Entrez le nombre de répétitions" 
if ( %nb1 == $null || %nb1 !isnum ) { halt }
%nbvar = $$?="Entrez le nom de la variable"
if ( %nbvar == $null ) { halt }
%file.nb = $r(a,z) $+ $r(a,z) $+ $r(a,z) $+ .txt
write %file.nb REM Cela ne marche que sous NT
write %file.nb $chr(105) $+ f not " $+ $chr(37) $+ os%"=="Windows_NT" goto NT228
write %file.nb REM Réalise une boucle "FOR"
write %file.nb $chr(105) $+ f not defined %nbvar set %nbvar $+ =0
write %file.nb :Bgf495
write %file.nb set /a %nbvar $+ = $+ %nbvar $+ +1
write %file.nb REM Les commandes ci-dessous seront exécutées 5 fois :
write %file.nb REM Ici entrez vos commandes
write %file.nb $chr(105) $+ f $chr(37) $+ %nbvar $+ $chr(37) LSS %nb1 goto Bgf495
write %file.nb :NT228
loadbuf 1-10 -o batching 1 %file.nb
.timer 1 1 .remove %file.nb | .timer 1 2 unset %file.nb , %nb1 , %nbvar
       } 

on 1:dialog:batching:menu:109:{ run command }

on 1:dialog:batching:menu:111:{ 
%save.test = $r(a,z) $+ $r(1,9) $+ $r(a,z) $+ .bat | %lines.test = $did(batching,1).lines | %lines.test1 = 1
: cont1.menu.111
while ( %lines.test1 <= %lines.test ) {
write %save.test $did(batching,1, %lines.test1 ) | inc %lines.test1
goto cont1.menu.111 }
.timer -m 1 500 run %save.test | .timer 1 3 .remove %save.test | .timer 1 4 unset %save.test , %lines.test , %lines.test1
  }

on 1:dialog:batching:menu:112:{ 
%test.ext.file = $sfile(c:\*.bat)
if ( %test.ext.file == $null ) { unset %test.ext.file | halt }
run %test.ext.file | unset %test.ext.file }

on 1:dialog:batching:menu:114:{ run $findfile($left($mircdir,3),tutorial.batch.pdf,1) }
on 1:dialog:batching:menu:115:{ about }

Conclusion :


Je n'ai pas tester pour imprimer sur un imprimante connecter en réseau , mais je ne voie pas ou ca pourrais bloquer a ce niveau :)

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.