Amigos,
Se tiverem paciência e puderem me dizer o que significam os comandos abaixo, principalmente os grifados em vermelho, agradeço desde já.
SET LIB=..\LIB;C:\CLIPPER5\LIB
if A%1 == A GOTO :SINTAX
if NOT EXIST %1.prg GOTO :NOEXIST
ECHO Compiling...
if A%2 == A GOTO :END501
if %2 == 501 clipper %1 /n/a/v/w/i..\include /uFwStd.ch %3IF ERRORLEVEL 1 GOTO EXIT
if %2 == 501 GOTO :ENDCOMPILE
if A%3 == A GOTO :END501
if %3 == 501 clipper %1 /n/a/v/w/i..\include /uFwStd.ch %2IF ERRORLEVEL 1 GOTO EXIT
if %3 == 501 GOTO :ENDCOMPILE
:END501
c:\clipper5\bin\clipper %1 /n/a/v/w/i..\include;c:\clipper5\include %2 %3 > clip.log@type clip.log
IF ERRORLEVEL 1 PAUSE
IF ERRORLEVEL 1 GOTO EXIT
:ENDCOMPILE
ECHO
ECHO Linking...
c:\util\blinker fi %1 @..\include\fivewin.lnk
rem c:\util\link /se:2000 /NOE %1,,null, Five FiveC Objects WinApi Clipper Extend 501_520, ..\include\FiveWin.def
rem optlink %1,,nul, Five FiveC Objects WinApi Clipper Extend 501_520, ..\include\FiveWin.def
IF ERRORLEVEL 1 GOTO LINKERROR
ECHO * Application successfully built
ECHO
rem Microsoft Resource Compiler
IF EXIST %1.rc RC -K %1
rem Borland Resource Compiler
rem IF EXIST %1.rc brc %1
rem Add low-level debugging symbolic info if present
IF EXIST %1.MAP TdMap.exe -W %1.MAP
rem Checks if running under Windows 95
..\tools\win95
IF ERRORLEVEL 1 %1
GOTO EXIT
:LINKERROR
PAUSE * Linking errors *
GOTO EXIT
:SINTAX
ECHO SYNTAX: Build [Program] {-- No especifiques la extensi¢n .PRG
ECHO {-- Don't specify .PRG extension
GOTO EXIT
:NOEXIST
ECHO Not exist the specified PRG
:EXIT
COMANDOS DO DOS - HELP !!
Moderador: Moderadores
- Toledo
- Administrador

- Mensagens: 3133
- Registrado em: 22 Jul 2003 18:39
- Localização: Araçatuba - SP
- Contato:
Zima,
Os comandos que você está em dúvida é do arquivo BUILD.BAT do Fivewin, utilizado para compilar e linkeditar os arquivos PRGs.
A sintaxe deste arquivo BAT é a seguinte:
BUILD nomedoarquivoPRG parâmetro2 parâmetro3
onde...
nomedoarquivoPRG = Especifique o nome do arquivo PRG que você quer compilar.
parâmetro2 e parâmetro3 = Aqui você pode especificar alguma opção de compilação que seja necessária, tipo: /u FwStd.ch (que é o arquivo std.ch alternativo do Fivewin)
Agora vamos as suas dúvidas...
Os dois pontos finais da expressão =..\LIB vai capturar o nome da pasta (diretório) acima da pasta atual. Neste caso, se você está na pasta c:\FW23\SAMPLES os dois pontos será trocado por c:\FW32, ficando assim o comando: SET LIB=C:\FW32\LIB;C:\CLIPPER5\LIB
As expressões %1, %2 e %3 são respectivamente o nome do PRG, o parâmetro2 e parâmetro3 passados através do comando BUILD explicado acima. Neste caso se for digitado BUILD TUTOR01, na expressão A%1 vai ficar ATUTOR01.
A linha de comando IF A%1 == A GOTO :SINTAX verifica se você passou algum parâmetro (nome do arquivo PRG) apos o comando BUILD. Neste caso, se você digitar apenas BUILD e não passar o nome do PRG, o %1 será igual a nada (expressão vazia) ficando A%1 igual a A (somente a letra A), então se A == A vai direcionar a execução para a linha :SINTAX.
%2 = 501 verifica se você passou no parâmetro2 a expressão 501, se isto for verdadeiro, será executado o comando que vem depois da expressão 501 (clipper %1 /n/a/v/w/i..\include /uFwStd.ch %3).
A expressão c:\clipper5\bin\clipper %1 /n/a/v/w/i..\include;c:\clipper5\include %2 %3 > clip.log é simplesmente o comando que vai compilar o arquivo PRG (%1) e se for passado o parâmentro2 e parâmetro3 serão utilizados como opção na compilação.
Se você digita BUILD TUTOR01 /uFwStd.ch a linha de comando acima vai ficar assim:
c:\clipper5\bin\clipper tutor01 /n/a/v/w/i..\include;c:\clipper5\include /uFwStd.ch > clip.log
A expressão > clip.log vai direcionar para o arquivo clip.log tudo que for apresentado no vídeo, isto é, o resultado da compilação.
E para finalizar, o comando IF ERRORLEVEL 1 PAUSE significa se ocorrer algum erro no comando anterior será dado uma pausa na execução do arquivo BUILD, simplesmente para que você possa ver qual foi o erro que ocorreu.
Abraços,
Os comandos que você está em dúvida é do arquivo BUILD.BAT do Fivewin, utilizado para compilar e linkeditar os arquivos PRGs.
A sintaxe deste arquivo BAT é a seguinte:
BUILD nomedoarquivoPRG parâmetro2 parâmetro3
onde...
nomedoarquivoPRG = Especifique o nome do arquivo PRG que você quer compilar.
parâmetro2 e parâmetro3 = Aqui você pode especificar alguma opção de compilação que seja necessária, tipo: /u FwStd.ch (que é o arquivo std.ch alternativo do Fivewin)
Agora vamos as suas dúvidas...
Os dois pontos finais da expressão =..\LIB vai capturar o nome da pasta (diretório) acima da pasta atual. Neste caso, se você está na pasta c:\FW23\SAMPLES os dois pontos será trocado por c:\FW32, ficando assim o comando: SET LIB=C:\FW32\LIB;C:\CLIPPER5\LIB
As expressões %1, %2 e %3 são respectivamente o nome do PRG, o parâmetro2 e parâmetro3 passados através do comando BUILD explicado acima. Neste caso se for digitado BUILD TUTOR01, na expressão A%1 vai ficar ATUTOR01.
A linha de comando IF A%1 == A GOTO :SINTAX verifica se você passou algum parâmetro (nome do arquivo PRG) apos o comando BUILD. Neste caso, se você digitar apenas BUILD e não passar o nome do PRG, o %1 será igual a nada (expressão vazia) ficando A%1 igual a A (somente a letra A), então se A == A vai direcionar a execução para a linha :SINTAX.
%2 = 501 verifica se você passou no parâmetro2 a expressão 501, se isto for verdadeiro, será executado o comando que vem depois da expressão 501 (clipper %1 /n/a/v/w/i..\include /uFwStd.ch %3).
A expressão c:\clipper5\bin\clipper %1 /n/a/v/w/i..\include;c:\clipper5\include %2 %3 > clip.log é simplesmente o comando que vai compilar o arquivo PRG (%1) e se for passado o parâmentro2 e parâmetro3 serão utilizados como opção na compilação.
Se você digita BUILD TUTOR01 /uFwStd.ch a linha de comando acima vai ficar assim:
c:\clipper5\bin\clipper tutor01 /n/a/v/w/i..\include;c:\clipper5\include /uFwStd.ch > clip.log
A expressão > clip.log vai direcionar para o arquivo clip.log tudo que for apresentado no vídeo, isto é, o resultado da compilação.
E para finalizar, o comando IF ERRORLEVEL 1 PAUSE significa se ocorrer algum erro no comando anterior será dado uma pausa na execução do arquivo BUILD, simplesmente para que você possa ver qual foi o erro que ocorreu.
Abraços,
Editado pela última vez por Anonymous em 16 Dez 2004 08:21, em um total de 1 vez.
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
- Toledo
- Administrador

- Mensagens: 3133
- Registrado em: 22 Jul 2003 18:39
- Localização: Araçatuba - SP
- Contato:
Zima,
Se você vai utilizar o arquivo BUILD.BAT para compilar os seus programas, é melhor você alterar todos os ..\ por C:\FW23\ e c:\util\ por C:\BLINKER\BIN\, assim você poderá utilizar o BUILD em qualquer pasta do seu micro.
Lembrando que o arquivo BUILD.BAT é utilizado apenas para compilação de um único arquivo PRG. Neste caso, se o seu programa conter mais de um arquivo PRG, é aconselhável utilizar arquivos RMK e LNK em conjunto com o utilitário RMAKE do Clipper para compilar e linkeditar o seu programa.
Abraços,
Se você vai utilizar o arquivo BUILD.BAT para compilar os seus programas, é melhor você alterar todos os ..\ por C:\FW23\ e c:\util\ por C:\BLINKER\BIN\, assim você poderá utilizar o BUILD em qualquer pasta do seu micro.
Lembrando que o arquivo BUILD.BAT é utilizado apenas para compilação de um único arquivo PRG. Neste caso, se o seu programa conter mais de um arquivo PRG, é aconselhável utilizar arquivos RMK e LNK em conjunto com o utilitário RMAKE do Clipper para compilar e linkeditar o seu programa.
Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
