Universo Online
Web Sites                   Pessoais

 

Bem vindo a pagina do Howto
Projeto xharbour!

Essa pagina tera varios topicos de como usar o xharbour .

Duvidas e comparações entre o xharbour e o Clipper serão comentadas aqui

How to do xharbour em portugues

Indice



1 - Como crio em programa para mostrar Hello Brazil na tela

2 - Como Usar um Tbrowse Relacionado

3 - Como compilar o xharbour dos Fontes

4 - Como imprimir no [x]xharbour

5 - Funções Sem Parametros formais definidos

6 - Como imprimir remotamente(tipo Sessões Telnet, Samba)



Pergunta Um: Como crio em programa para mostrar Hello Brazil na tela



Crie um pequeno programa que contenha as seguintes linhas e o nomeie de hellobr.prg

  • Function Main

  • ? "Hello Brazil"

  • return Nil



Agora vamos compilar o hellobr.prg(Eu assumo que o compilador Borland C++ esta instalado>

  • Usando um arquivo .bat

  • Use Bld_b32 hellobr

  • hellobr



  • Usando a linha de Commando

  • xharbour -n -m hellobr.prg

  • Para nao precisar digitar sempre coloque a seguinte linha no seu autoexec.bat

  • Set HBLIB=rtl.lib lang.lib vm.lib macro.lib pp.lib common.lib gtwin.lib rdd.lib dbfcdx.lib dbfntx.lib

  • bcc32 -OS -5 -tW hellobr.c %HBLIB%

[to Top ------ ]
 



Pergunta 2: Como Usar um Tbrowse Relacionado

  • Primeiro baixe o fonte tbrel.zip para windows/DOS/OS2 ou tbrel1.zip para linux

  • depois Compile o sistema como sugerido na pergunta 1.

  • Essa topico, tambem mostra como usar os seguintes RDD: O RDDADS e o DBFCDX. Veja o codigo fonte do programa para como usalos

[to Top ------ ]
 



Pergunta 3: Como compilar o xharbour dos Fontes

Para compilar o xharbour dos fontes voce precisa

  • Dos Fontes que podem ser baixado Aqui

  • Se voce usa a LibCT,ou a nanfor em seus programa baixe o fonte da contribuição Aqui

  • Do programa Bison que pode ser baixado aqui e descompacte ele em c:\bison

  • As Seguintes Variaveis setadas no autoexec.bat( NO NT/2K/XP no autoexec.nt )
    SET HB_LEX=SIMPLEX
    SET BISON_SIMPLES=c:/bison/bison.simple
    SET CFLAGS= -5 -OS -a8
    SET PATH=%path%;c:\bison


Instalado os Fontes:

  • 1 - Crie um diretorio chamado xharbour, se voce ja o tem faça voce ira atualizar a sua distribuição xharbour

  • 2 - Descompacte os fontes usando o seguinte comando pkunzip -d c:\xharbour(windows) no caso do linux use unzip .zip -d /usr/local/xharbour

  • 3 - Se Voce baixou o pacote de contribuição crie um diretorio de nome contrib (c:\xharbour\contrib) e desconpacte os fontes de contribui‡Æo para esse diretorio e no caso do linux use unzip .zip -d /usr/local/xharbour/contrib

  • 4 - compile os fontes. usando o comando make -fmakefile.bc( para Borland C++ 5.5, ou somente make para Linux e Djgpp)

  • 5 - Apos a compilação, instale os binarios com make_b32 ( para Borland C++ 5.5) ou make install (Linux ou DJGPP)

  • 6 - Voce tem agora a ultima versão do xharbour

[to Top ------ ]
 



4 - Como imprimir no [x]xharbour



[Source Forge]

Mais Noticias

Ultimas Noticias

Dave's news


Noticias Anteriores

2º quarto 2000

1º quarto 2000

4º quarto 1999

3º quarto 1999

2º quarto 1999

 

Ultimo build:
0.73.28.1 - 2003-03-19

Ingles | Espanhol | Polones

No Linux

Windows

function main()

local cOutraImp := "deskjet"
local cTempFile := strtran( Time(),":")+'.tmp'
/* Direcionando a saída para o arquivo */
set printer on
set console off
set printer to (cTempFile)
/* Imprimindo ( para o arquivo ) */
qout( "Teste de impressao" )
qout( "Teste de impressao" )
qout( "Teste de impressao" )
qout( "Teste de impressao" )
/* Desabilitando a saída para o arquivo */
set printer off
set console on
/* Imprimindo na impressora default ( geralmente "lp" )
*/
__run( "lpr " + cTempFile )
/* Imprimindo numa outra impressora */
/* run( "lpr -P" + cOutraImp + " " + cTempFile ) */
return( nil )
CLS
?? 'Test program for WINDOWS printing'
? '---------------------------------'
? SET(_SET_DEVICE)
aPrinter:=GetPrinters()
IF EMPTY(aPrinter)
? '----- No Printers installed'
ELSE
set printer to (GetDefaultPrinter())
? SET(_SET_PRINTER)
? SET(_SET_PRINTFILE)
set console off
set printer on
? 'Default Printer'
?'----------------'
? GetDefaultPrinter()
?
? 'Printers Available'
?'-------------------'
FOR x:= 1 TO LEN(aPrinter)
? aPrinter[x]
NEXT x
aPrinter:= GetPrinters(.T.)
? 'Printers and Ports'
?'-------------------'
FOR x:= 1 TO LEN(aPrinter)
? aPrinter[x,1]+' on '+aPrinter[x,2]
NEXT x
EJECT
set printer off
set console on
set printer to
ENDIF
? SET(_SET_PRINTER)
? SET(_SET_DEVICE)
WAIT
return( nil )

[to Top ------ ]
 



Pergunta 5: Funções Sem Parametros formais definidos

O XHarbour agora tem a abilidade de ter funções sem parametros definidos. Isso e gracas ao ... como parametros. Um exemplo Seria

  • FUNCTION MAIN()

  • Local n ,x ,p , total := 0

  • For x:=1 to 5

  • For p:= 1 to 10

  • For n:= 1 to 3

  • nTotal += Somatorio(x,p,p**n)

  • Next

  • Next

  • Next

  • ? nTotal

  • RETURN NIL

  • FUNCTION SOMATORIO(...)

  • Local n, nTotal := 0, aParam := HB_APARAMS()

  • FOR EACH N in aParam

  • nTotal += N

  • NEXT

  • return nTotal

[to Top ------ ]
 



Pergunta 6: Como imprimir remotamente(tipo SEssões Telnet, Samba)

Vocˆ tem diversas maneiras para imprimir remotamente.

  • Em rede locais linux com windows(Samba)

  • Para imprimir de suas apps linux para impressoras compartilhadas via samba vocˆ pode usar

  • Primeiro imprima para arquivo, com esse arquivo vocˆ deve usar o seguinte comando

  • echo -e "put relat.prn\n" | smbclient "//MAQUINA/IMPRESSORA" -N -P onde relat.prn e o nome do seu arquivo e //MAQUINA/IMPRESSORA e o nome do compartilhamento e impressora

  • Para programa remotos.

  • Essa Foi a mais cabeluda pra ajustar. mais a solução era besta demais. Para imprimir de uma maquina remota usando telnet(O Putty) use.

  • Imprima para arquivo

  • apos use o seguinte comando para imprimir lpansi arquivo onde arquivo ‚ o nome do arquivo gerado.(Tenha Certeza que na tela Terminal de opções do putty , tenha uma impressora selecionada na caixa de seleção.

  • o lpansi pode ser baixado aqui.


As informações abaixo, foram enviadas por
Mike Maciel




1 - Instalando e configurando o xharbour com o BCC 5.5
1.1 - Criando o arquivo bcc32.cfg
1.2 - Criando o arquivo ilink32.cfg
1.3 - Alterando o Autoexec.bat

2 - Usando o xharbour
2.1 - Criando nosso primeiro programa
2.2 - Gerando, Compilando e Linkando o código

3 - Download dos exemplos dos arquivos de configuração

4 - Principais erros, possíveis causas e soluções

1 - Instalando e configurando o xharbour com o BCC 5.5

Descompacte o xharbour na pasta C:\xharbour. Logo após, você deverá instalar o Borland C Copiler 5.5. Para isso, execute a instalação, e quando pedir o local da instalação altere o padrão C:\BORLAND\BCC55 para C:\BCC55 (Não é obrigatório, mas isso facilitará na hora de configurar os paths no autoexec.bat).

Após instalados o xharbour e o BCC 5.5, iremos criar os arquivos de configuração do BCC 5.5, e editar o AUTOEXEC.BAT. Não se assuste! É fácil como dizer Pindamonhagada de trás para frente (...rs...)! 

1.1 - Criando o arquivo bcc32.cfg

Este é o arquivo de configuração do BCC. Nele você informará os caminhos para o diretório /LIB e /INCLUDE do BCCe do xharbour. Para isso, abra o Bloco de Notas, e digite o seguinte:

-Ic:\bcc55\include;c:\xharbour\include
-Lc:\bcc55\lib;c:\xharbour\lib

Agora salve o arquivo no diretório C:\BCC\BIN, com o nome de bcc32.cfg. Isso fará com que o compilador procure as Libs e Includes nos diretórios do BCC e do xharbour.

1.2 - Criando o arquivo ilink32.cfg

Aqui iremos criar o arquivo de configuração do linkador do BCC. Para tal, usaremos novamente o Bloco de Notas. Abra um novo arquivo e digite:

-Lc:\bcc55\lib;c:\xharbour\lib

Agora salve-o no diretório C:\BCC55\BIN com o nome de ilink32.cfg. Este arquivo fará com que o lincador do BCC procure pelas libraries nos diretórios /LIB do BCC e do xharbour.

1.3 - Alterando o autoexec.bat

Novamente vamos usar o Bloco de Notas para essa tarefa. Vá em Arquivo, Abrir..., e digite "C:\AUTOEXEC.BAT" (com as aspas) na caixa de texto Nome do Arquivo.
Aberto o autoexec.bat, iremos acrescentar dois diretórios no path. Para isso acrescente as seguintes linhas no final do autoexec.bat.

PATH=%PATH%;C:\BCC55\BIN;C:\xharbour\BIN

Salve o arquivo.
Será necessário agora, reiniciar o computador para que as alterações no path sejam validadas.

2 - Usando o xharbour

2.1 - Criando nosso primeiro programa

Após o (duro) processo de configuração, vamos compilar nosso primeiro programa. Será algo simples (o famoso Hello, World!). Para isso, abra o Prompt do DOS. Deverá aparecer isso:

Microsoft(R) Windows 98
(C)Copyright Microsoft Corp 1981-1999

C:\WINDOWS>

Vá para o diretório raiz, digitando CD\

Microsoft(R) Windows 98
(C)Copyright Microsoft Corp 1981-1999

C:\WINDOWS>CD\

C:\>

Agora crie um diretório. No exemplo vamos criar um diretórios chamado HBTEST, mas você pode mudar o nome para qualquer outro que achar necessário. Digite os comandos:

MD\HBTEST
CD\HBTEST

Irá ficar assim:

Microsoft(R) Windows 98
(C)Copyright Microsoft Corp 1981-1999

C:\WINDOWS>CD\

C:\>MD\HBTEST

C:\>CD\HBTEST

C:\HBTEST>

Crie um arquivo com o nome teste.prg. Este será o código fonte do nosso programa. Para criá-lo você poderá usar qualquer editor ASCII (texto sem formatação) de sua preferência. Eu sugiro o EDIT, do MS-DOS. Para usar o edite, digite no prompt do DOS:

edit teste.prg

Digite o seguinte código abaixo para o nosso programa:

/* Testando o xharbour. */

function main
    clear screen
    ?"HEllo, World!"
    quit
return nil

/* Este e' o fim do nosso teste */

Salve o arquivo e saia do editor.

Atenção!
A primeira função a ser executada no nosso programa será sempre a primeira função declarada no arquivo fonte.

2.2 - Gerando, Compilando e Linkando o código

Editado o código do nosso programa, vamos agora gerar o  fonte C à partir do nosso fonte PRG. Para isso digite:

xharbour /N /M teste.prg

Se tudo der certo irá aparecer algo mais ou menos assim:

xharbour Compiler Alpha build 38.0 (Flex)
Copyright 1999-2002, http://www.xharbour-project.org/
Compiling 'teste.prg'...
Lines 11, Functions/Procedures 2
Generating C source output to 'teste.c'... Done.

Atenção: É importante que os parâmetros /N e /M sejam sempre informados.

Gerado o arquivo teste.c, iremos então compilá-lo e linká-lo. É aí que o BCC entrará em ação. O xharbour fornece um arquivo de lote (extensão .BAT) que facilita o trabalho. Para isso digite:

bld_b32 teste.c

Irá aparecer mais ou menos isso:

Borland C++ 5.5.1 for Win32 Copyright (c) 1993, 2000 Borland
teste.c:
Turbo Incremental Link 5.00 Copyright 9c) 1997, 2000 Borland
C:\HBTEST>

Pronto! Agora é só executar o nosso programa!

3 - Download dos exemplos dos arquivos de configuração

Disponível aqui para Download os exemplos citados acima. Para baixá-los, clique sobre o link com o botão direito do mouse e selecione Salvar destino como..., lembrando que os arquivos bcc32.cfg e ilink32.cfg devem ser colocado no diretório /BIN do BCC.
ATENÇÃO! Por questões de segurança, o arquivo exemplo do autoexec.bat estão em formato TXT (texto sem formatação)

ARQUIVO EXEMPLO

DESCRIÇÃO

bcc32.cfg

Exemplo do arquivo de configuração do compilador BCC 5.5

ilink32.cfg

Exemplo do arquivo de configuração do linkador.

autoexec.txt

Exemplo das alterações feitas no autoexec.bat

teste.prg

Código fonte do exemplo citado acima

 

4 - Modificando config.sys

Se vocˆ recebe a mensagem Sem espaço de ambiente, voce precisa inserir a linha abaixo no config.sys

Shell=c:\windows\command.com /e:2048 /p .



4 - Principais erros, possíveis causas e soluções

ERRO

POSSÍVEL CAUSA

SOLUÇÃO

Quando digito o comando xharbour nome_do_arquivo, aparece a mensagem Comando ou nome de arquivo inválido

- O Path (caminho) não foi configurado corretamente no autoexec.bat

- Edite o autoexec.bat, indicando o caminho correto.

Ao compilar o fonte .C como bld_b32, aparecem várias mensagens de erro

- Os arquivos bcc32.cfg e ilink32.cfg não foram criados.
- Os arquivos bcc32.cfg e ilink32.cfg não foram configurados corretamente

- Crie os arquivos conforme explicado acima.
- Configure corretamente os arquivos, conforme explicado acima.

Consegui gerar o programa,  mas ao executar ele apenas pula uma linha e retorna ao prompt

- Não foram informado os parâmetros /N /M para o xharbour

- Gere novamente os fontes C, usando o comando harbour /N /M nome_do_arquivo.

Error de espaço de ambiente

-Error ao configurar o xharbour

- Veja a seção modificando config.sys .

Mais Noticias...


Webmaster: Luiz Rafael Culik - Legal stuff

Last updated on 2002/05/11