Jump to content
Fivewin Brasil

Harbour ou xHarbour


oribeiro

Recommended Posts

Se voce usa SQLRDD pode até migrar, mas não conseguirá usar o SQLRDD... Se não usar o SQLRDD é até possivel inclusive deixar seu sistema compativel com ambos...

Como uso xHarbour não sei explanar as diferenças e o que é melhor em um ou outro e como uso SQLRDD não tenho como mudar...

Também acho uma tremenda bobeira ter Harbour e xHarbour, acredito que teriam que unificar e com isso o projeto ganhar ainda mais força...

Link to comment
Share on other sites

Nas novas versões do xHarbour, o único incoveniente que encontrei, foi o gerenciamento de memória que está muito pesado, mas aparentemente com alguns ajustes e o comando: HB_GCALL( .T. ) e HB_GCALL( .F. ), resolveu...

Já quanto ao Harbour, ainda não consegui fazer nada para poder ter uma idéia. Mas no geral, o xHarbour me satisfaz.

Se bem que gosto, cada um tem o seu... Somente testando nos dois compiladores, para se ter uma idéia.

abs;

Link to comment
Share on other sites

O que venho percebendo é justamente o que o Kapi e Eduardo disse e acrescentando o Pai da criança Sr. Linares recomenda o uso do harbour, mas fica a teu critério, pois o que manda é o seu conhecimento e "habilidade" em usa-la...existe lib para o sql no harbour, não consegui usar por falta de conhecimento, mas vi em fóruns que funciona, mas harbour tem que garimpar informações e se cadastrar no fórum oficial, eles respondem rápido e atualizam mais rápido ainda. mas como tempo é dinheiro não mexi mais com harbour. estude e tire sua própria conclusão, sempre será a melhor escolha. tem amigo no fórum que não troca o harbour por xharbour e vice-versa, portanto, boa sorte nos seus estudos.

Link to comment
Share on other sites

Grande Luiz, blz....é verdade eu me lembro e fiz também um testes, inclusive vc me ajudou a usar o ads, lembra....porem nas atuais configurações como o Kleyber descreveu está sim tendo uma significante mudança, inclusive em rede...mas como o kapi disse, vc vai encontrando funções e adequações que ajudam e isso é o que importa...o resultado final...

Link to comment
Share on other sites

Pessoal,

Obrigado pelas respostas, coloquei essa questão para o Linares que ainda não respondeu. Vejam esse tópico:

http://forums.fivetechsupport.com/viewtopic.php?f=3&t=27938&sid=66a441fc7bad5c323eef9f50bcc6ebb2

Vou fazer testes na minha aplicação. Acho que o mais complicado vai ser deixar o hbmake.exe, eu só sei compilar com ele (risos).

Um abraço,

Link to comment
Share on other sites

Oscar,

quanto ao hbmake vc vai ter o hbmk2 no harbour ainda mais facil de usar :D

eu migrei do xharbour para harbour, ja desenvolvi varios app com ele, o resultado que tive foi aplicativo rodando mais rapido ( mais velocidade nao e; tudo pq nao e corrida xD ), menos consumo de recurso do pc ( memoria etc ).

como deixei de usar o dbf e migrei a SQL ( usando a TDolphin ) fico muito massa.

Vale apena fazer seus testes :D

Link to comment
Share on other sites

Olá Pessoal,

este é um assunto que dá "pano prá manga", em 2007/2008 tinha mesma dúvida, vou deixar um relato da minha experiência com xHarbour/Harbour. Atualmente uso os dois, depende do projeto.

Para mim, o Harbour leva uma ligeira vantagem, principalmente para aplicação totalmente visual, além da conexão mysql estou usando o sqlite3 para aplicação embarcada.

Porém para projeto com tela mista (texto e visual) só foi possível com o xHarbour, como já disse, ambos são ótimos, as diferenças são poucas, porém o Harbour ganha no detalhe.

JMSILVA

Link to comment
Share on other sites

Uso o Harbour para algumas aplicações pontuais, como comunicação com catracas usando MultiThread. Na operação do sistema tudo é feito em xHarbour (comercial) com Fivewin porque uso a SQLRDD.

Harbour não tem nenhuma outra RDD para SQL que seja confiavel a ponto de usar em produção. Quando eliminar o uso de DBSEEK, DBSKIP, etc do sistema por completo aí terei liberdade para experimentar o Harbour em todo sistema, mas por enquanto não tem como.

xHarbour para Multithread aconselho a nem perderem tempo, já em Harbour funciona muito bem.

Link to comment
Share on other sites

Mas os desenvolvedores do xHarbour não estão correndo atrás dessas diferenças?

Minha preocupação é em não ser pontual, mas pensar a longo prazo, por exemplo: Corro o risco de migrar toda a minha aplicação para Harbour e daqui a alguns meses, com possíveis novas versões do xHarbour ter outro quadro favorável a ele?

Link to comment
Share on other sites

Se voce não usar MultiThreads em seu sistema e usar base de dados DBF ou então, se for SQL, tratar tudo com comandos nativos do banco (SELECT, UPDATE, INSERT, etc) voce pode manter o mesmo código compativel com ambos. Fazendo isso se por acaso quiser mudar é só voce configurar o script de compilação para o outro (x)Harbour e pronto.

Voce fica independente disso.

Quanto ao xHarbour não tenho do que reclamar, uso a quase 12 anos e a 8 anos usamos também o SQLRDD. Sem qualquer tipo de problema. Quando não opino se é melhor ou pior que Harbour é por pura falta de conhecimento e não por estar descontente com xHarbour. Com relação a MultiThread aí sim posso opinar pois ja trabalhei com isso em xHarbour e em Harbour e em Harbour funcionou de maneira mais estavel. Mas isso é coisa pontual.

xHarbour sempre tem atualizações também, basta ver o changelog em xharbour.com.

Abraços e siga despreocupado, se fizer como falei acima voce pode ter os dois, mas se não quiser, qualquer um que escolher voce pode ganhar dinheiro e oferecer um bom produto ao seu cliente.

Mas os desenvolvedores do xHarbour não estão correndo atrás dessas diferenças?

Minha preocupação é em não ser pontual, mas pensar a longo prazo, por exemplo: Corro o risco de migrar toda a minha aplicação para Harbour e daqui a alguns meses, com possíveis novas versões do xHarbour ter outro quadro favorável a ele?

Link to comment
Share on other sites

Oscar,

Um ponto bacana tambem é que o Harbour não tem versão comercial, vejo um maior ganho em recursos nele, ja o xHarbour tem o free e o comercial,

ai ele tem update muito pouco perto do harbour se você analisar.

Ambos sao bons, eu uso harbour porque nao uso sqlrdd, e sim TDolphin que as SQL sao tudo nativo e facil migraçao :D

Vale apena testar e tirar suas conclusoes, se nao depende do sqlrdd vai de harbour. ;)

Link to comment
Share on other sites

Sérgio,

Pensei em migrar porque minha aplicação (fwh13.12+xHarbour) está dando alguns erros intermitentes inexplicáveis.

Numa função que é executada inúmeras vezes, de repente dá erro de alias não existe ou coisa assim. O fato é que eu estou dando tiros para todo lado, tentando acertar a solução! risos

Link to comment
Share on other sites

Oscar,

Teu xHarbour é comercial? Se sim, veja o suporte deles e mostre o que está acontecendo. Se não, é como o Lailton diz, o xHarbour free tem muito menos atualização que o Harbour. Eu tenho sistemas rodando com xHarbour+FWH e funcionam 100% usando DBF, mas as últimas versões do Harbour tem sim sido sistematicamente melhores que o xHarbour. De qualquer forma, se tiveres tempo e disposição, te aconselho a pegar um sistema pequeno e migrar para o Harbour. Se puderes usar o MSVC vai ser melhor ainda.

Link to comment
Share on other sites

Lainton,

Só possuo um sistema e ele é muito grande. Acredito que vou ter um trabalho enorme para convertê-lo e testar todas as suas funcionalidades.

Acredito que uma primeira mudança será utilizar o C da própria Microsoft no lugar do da Borland. Acha possível possível usar o MSVC junto com o xHarbour 1.2.3? Em caso afirmativo, como?

Aguardo,

Link to comment
Share on other sites

O que eu devo mudar no meu arquivo de lotes para user o hbmk2.exe do Harbour no lugar do hbmake.exe do xHarbour.

#BCC
VERSION=BCB.01
!ifndef CC_DIR
CC_DIR = $(MAKE_DIR)
!endif

!ifndef HB_DIR
HB_DIR = $(HARBOUR_DIR)
!endif

RECURSE= NO

COMPRESS = NO
EXTERNALLIB = NO
XFWH = YES
FILESTOADD =  1
WARNINGLEVEL =  0
USERDEFINE =
USERINCLUDE =
FWH = C:\FWH
GUI = YES
MT = NO
SRC12 = obj
PROJECT = mvend.exe $(PR)


# $(SRC12)\SAY808.OBJ    //
# $(SRC12)\WINDOW.OBJ    //
# $(SRC12)\TGET.OBJ      //
# $(SRC12)\TRICHEDI.OBJ  //
# $(SRC12)\TSBUTTON.OBJ  //
# $(SRC12)\Bpaint.OBJ    //
# $(SRC12)\NFE.OBJ       //
# $(SRC12)\PRINTER.OBJ   //

OBJFILES = $(SRC12)\MVEND.OBJ //
 $(SRC12)\TMETAFIL.OBJ  //
 $(SRC12)\RPREVIEW.OBJ  //
 $(SRC12)\BUTTONB.OBJ   //
 $(SRC12)\WBROWSE.OBJ   //
 $(SRC12)\TDOSPRN.OBJ   //
 $(SRC12)\browse.obj //
 $(SRC12)\scroll.obj //
 $(SRC12)\qftp.obj   //
 $(SRC12)\tsmtp.obj  //
 $(SRC12)\banner.obj //
 $(SRC12)\barlib.obj //
 $(SRC12)\codabar.OBJ //
 $(SRC12)\code128.OBJ //
 $(SRC12)\code3de9.OBJ //
 $(SRC12)\ean13.OBJ  //
 $(SRC12)\go_code.OBJ //
 $(SRC12)\int25.OBJ  //
 $(SRC12)\CCBAN.OBJ  //
 $(SRC12)\CCCAI.OBJ  //
 $(SRC12)\CCCAT.OBJ  //
 $(SRC12)\CCCHQ.OBJ  //
 $(SRC12)\CCCPG.OBJ  //
 $(SRC12)\CCCRC.OBJ  //
 $(SRC12)\CCLIE.OBJ  //
 $(SRC12)\CCMVMT.OBJ //
 $(SRC12)\CCONT.OBJ  //
 $(SRC12)\CCPAG.OBJ  //
 $(SRC12)\CCPAR.OBJ  //
 $(SRC12)\CCREC.OBJ  //
 $(SRC12)\CCTRAB.OBJ //
 $(SRC12)\CFORN.OBJ  //
 $(SRC12)\CFPED.OBJ  //
 $(SRC12)\CFRETE.OBJ //
 $(SRC12)\CGRUP.OBJ  //
 $(SRC12)\CGRVD.OBJ  //
 $(SRC12)\CLOTE.OBJ  //
 $(SRC12)\CMOED.OBJ  //
 $(SRC12)\CMOVCC.OBJ //
 $(SRC12)\CMVSIM.OBJ //
 $(SRC12)\CNIMP.OBJ  //
 $(SRC12)\CNOTA.OBJ  //
 $(SRC12)\CNSER.OBJ  //
 $(SRC12)\COAPO.OBJ  //
 $(SRC12)\CCEST.OBJ  //
 $(SRC12)\COMAN.OBJ  //
 $(SRC12)\COMOT.OBJ  //
 $(SRC12)\CPARA.OBJ  //
 $(SRC12)\CPREC.OBJ  //
 $(SRC12)\CPREE.OBJ  //
 $(SRC12)\CPREM.OBJ  //
 $(SRC12)\CPRIS.OBJ  //
 $(SRC12)\CPROCO.OBJ //
 $(SRC12)\CPROD.OBJ  //
 $(SRC12)\CPROFOR.OBJ //
 $(SRC12)\CPROPSE.OBJ //
 $(SRC12)\CPROSI.OBJ //
 $(SRC12)\CRMAN.OBJ  //
 $(SRC12)\CSERV.OBJ  //
 $(SRC12)\CTART.OBJ  //
 $(SRC12)\CTCFP.OBJ  //
 $(SRC12)\CTCST.OBJ  //
 $(SRC12)\CTICM.OBJ  //
 $(SRC12)\CTNAT.OBJ  //
 $(SRC12)\CTRAN.OBJ  //
 $(SRC12)\CUSER.OBJ  //
 $(SRC12)\CVCGR.OBJ  //
 $(SRC12)\CVCPR.OBJ  //
 $(SRC12)\CVEDI.OBJ  //
 $(SRC12)\CVEEN.OBJ  //
 $(SRC12)\CVEIC.OBJ  //
 $(SRC12)\CVEND.OBJ  //
 $(SRC12)\ECLIE.OBJ  //
 $(SRC12)\EVEND.OBJ  //
 $(SRC12)\EFORN.OBJ  //
 $(SRC12)\EPROD.OBJ  //
 $(SRC12)\LBOLC.OBJ  //
 $(SRC12)\LBOLE.OBJ  //
 $(SRC12)\LCBAI.OBJ  //
 $(SRC12)\LCBXP.OBJ  //
 $(SRC12)\LCCH1.OBJ  //
 $(SRC12)\LCCHQ.OBJ  //
 $(SRC12)\LCFLX.OBJ  //
 $(SRC12)\LCLIE.OBJ  //
 $(SRC12)\LCMAP.OBJ  //
 $(SRC12)\LCONT.OBJ  //
 $(SRC12)\LCREM.OBJ  //
 $(SRC12)\LCREP.OBJ  //
 $(SRC12)\LCRES.OBJ  //
 $(SRC12)\LCUPOM.OBJ //
 $(SRC12)\LDUPL.OBJ  //
 $(SRC12)\LECON.OBJ  //
 $(SRC12)\LFCAL.OBJ  //
 $(SRC12)\LFORN.OBJ  //
 $(SRC12)\LFREC.OBJ  //
 $(SRC12)\LCOMP.OBJ  //
 $(SRC12)\LGERE.OBJ  //
 $(SRC12)\LLVEN.OBJ  //
 $(SRC12)\LMVEMP.OBJ //
 $(SRC12)\LMVME.OBJ  //
 $(SRC12)\LMVMT.OBJ  //
 $(SRC12)\CINVE.OBJ  //
 $(SRC12)\LNCOM.OBJ  //
 $(SRC12)\LNCUS.OBJ  //
 $(SRC12)\LNOTAF.OBJ //
 $(SRC12)\LNRES.OBJ  //
 $(SRC12)\LNREE.OBJ  //
 $(SRC12)\LORES.OBJ  //
 $(SRC12)\LOROS.OBJ  //
 $(SRC12)\LOSDS.OBJ  //
 $(SRC12)\LOVDC.OBJ  //
 $(SRC12)\LOVDP.OBJ  //
 $(SRC12)\LOVDS.OBJ  //
 $(SRC12)\LPCOM.OBJ  //
 $(SRC12)\LPLAR.OBJ  //
 $(SRC12)\LPROD.OBJ  //
 $(SRC12)\LPVEN.OBJ  //
 $(SRC12)\LPNFS.OBJ  //
 $(SRC12)\LRCOM.OBJ  //
 $(SRC12)\LSCOM.OBJ  //
 $(SRC12)\LTELV.OBJ  //
 $(SRC12)\LVEST.OBJ  //
 $(SRC12)\NFPADRAO.OBJ //
 $(SRC12)\NFRSF.OBJ  //
 $(SRC12)\NF7VIDAS.OBJ //
 $(SRC12)\NFAVLIS.OBJ //
 $(SRC12)\NFBIGBOY.OBJ //
 $(SRC12)\NFDEKALK.OBJ //
 $(SRC12)\NFCAMPCA.OBJ //
 $(SRC12)\NFIMARC.OBJ //
 $(SRC12)\NFINBRSO.OBJ //
 $(SRC12)\NFITUFLU.OBJ //
 $(SRC12)\NFITUTI.OBJ //
 $(SRC12)\NFLADBOR.OBJ //
 $(SRC12)\NFPECSIL.OBJ //
 $(SRC12)\NFVAHLE.OBJ //
 $(SRC12)\NFVALEN.OBJ //
 $(SRC12)\SINTEGRA.OBJ //
 $(SRC12)\FACHA.OBJ //
 $(SRC12)\FBOLETO.OBJ //
 $(SRC12)\FCHRS.OBJ //
 $(SRC12)\FCONT.OBJ //
 $(SRC12)\FCRYP.OBJ //
 $(SRC12)\FDATA.OBJ //
 $(SRC12)\FDBFS.OBJ //
 $(SRC12)\FERRO.OBJ //
 $(SRC12)\FFUNC.OBJ //
 $(SRC12)\FGEREL.OBJ //
 $(SRC12)\FGRAF.OBJ //
 $(SRC12)\FNTXS.OBJ //
 $(SRC12)\FORGA.OBJ //
 $(SRC12)\FPED_OS.OBJ //
 $(SRC12)\FPRECO.OBJ //
 $(SRC12)\FSENH.OBJ //
 $(SRC12)\FSETS.OBJ //
 $(SRC12)\FVERREL.OBJ //
 $(SRC12)\FCALC.OBJ //
 $(SRC12)\fRTF.OBJ  //
 $(SRC12)\XBLITE.OBJ //
 $(SRC12)\CORGET.OBJ $(OB)


# SAY808.PRG          //
# WINDOW.PRG          //
# TGET.PRG            //
# lib\TRICHEDI.PRG    //
# lib\TSBUTTON.prg    //
# lib\Bpaint.c        //
# NFE.PRG             //
# PRINTER.PRG         //

PRGFILES = MVEND.PRG //
 TMETAFIL.PRG        //
 RPREVIEW.PRG        //
 BUTTONB.PRG         //
 WBROWSE.PRG         //
 TDOSPRN.PRG         //
 browse.prg   //
 scroll.prg   //
 qftp.prg     //
 tsmtp.prg    //
 banner.prg   //
 barlib.prg   //
 codabar.prg  //
 code128.prg  //
 code3de9.prg //
 ean13.prg    //
 go_code.prg  //
 int25.prg    //
 CCBAN.PRG  //
 CCCAI.PRG  //
 CCCAT.PRG  //
 CCCHQ.PRG  //
 CCCPG.PRG  //
 CCCRC.PRG  //
 CCLIE.PRG  //
 CCMVMT.PRG //
 CCONT.PRG  //
 CCPAG.PRG  //
 CCPAR.PRG  //
 CCREC.PRG  //
 CCTRAB.PRG //
 CFORN.PRG  //
 CFPED.PRG  //
 CFRETE.PRG //
 CGRUP.PRG  //
 CGRVD.PRG  //
 CLOTE.PRG  //
 CMOED.PRG  //
 CMOVCC.PRG //
 CMVSIM.PRG //
 CNIMP.PRG  //
 CNOTA.PRG  //
 CNSER.PRG  //
 COAPO.PRG  //
 CCEST.PRG  //
 COMAN.PRG  //
 COMOT.PRG  //
 CPARA.PRG  //
 CPREC.PRG  //
 CPREE.PRG  //
 CPREM.PRG  //
 CPRIS.PRG  //
 CPROCO.PRG //
 CPROD.PRG  //
 CPROFOR.PRG //
 CPROPSE.PRG //
 CPROSI.PRG //
 CRMAN.PRG  //
 CSERV.PRG  //
 CTART.PRG  //
 CTCFP.PRG  //
 CTCST.PRG  //
 CTICM.PRG  //
 CTNAT.PRG  //
 CTRAN.PRG  //
 CUSER.PRG  //
 CVCGR.PRG  //
 CVCPR.PRG  //
 CVEDI.PRG  //
 CVEEN.PRG  //
 CVEIC.PRG  //
 CVEND.PRG  //
 ECLIE.PRG  //
 EVEND.PRG  //
 EFORN.PRG  //
 EPROD.PRG  //
 LBOLC.PRG  //
 LBOLE.PRG  //
 LCBAI.PRG  //
 LCBXP.PRG  //
 LCCH1.PRG  //
 LCCHQ.PRG  //
 LCFLX.PRG  //
 LCLIE.PRG  //
 LCMAP.PRG  //
 LCONT.PRG  //
 LCREM.PRG  //
 LCREP.PRG  //
 LCRES.PRG  //
 LCUPOM.PRG //
 LDUPL.PRG  //
 LECON.PRG  //
 LFCAL.PRG  //
 LFORN.PRG  //
 LFREC.PRG  //
 LCOMP.PRG  //
 LGERE.PRG  //
 LLVEN.PRG  //
 LMVEMP.PRG //
 LMVME.PRG  //
 LMVMT.PRG  //
 CINVE.PRG  //
 LNCOM.PRG  //
 LNCUS.PRG  //
 LNOTAF.PRG //
 LNRES.PRG  //
 LNREE.PRG  //
 LORES.PRG  //
 LOROS.PRG  //
 LOSDS.PRG  //
 LOVDC.PRG  //
 LOVDP.PRG  //
 LOVDS.PRG  //
 LPCOM.PRG  //
 LPLAR.PRG  //
 LPROD.PRG  //
 LPVEN.PRG  //
 LPNFS.PRG  //
 LRCOM.PRG  //
 LSCOM.PRG  //
 LTELV.PRG  //
 LVEST.PRG  //
 NFPADRAO.PRG //
 NFRSF.PRG    //
 NF7VIDAS.PRG //
 NFAVLIS.PRG  //
 NFBIGBOY.prg //
 NFDEKALK.PRG //
 NFCAMPCA.prg //
 NFIMARC.prg  //
 NFINBRSO.PRG //
 NFITUFLU.prg //
 NFITUTI.PRG  //
 NFLADBOR.PRG //
 NFPECSIL.prg //
 NFVAHLE.PRG  //
 NFVALEN.PRG  //
 SINTEGRA.PRG //
 lib\FACHA.PRG //
 lib\FBOLETO.PRG //
 lib\FCHRS.PRG //
 lib\FCONT.PRG //
 lib\FCRYP.PRG //
 lib\FDATA.PRG //
 lib\FDBFS.PRG //
 lib\FERRO.PRG //
 lib\FFUNC.PRG //
 lib\FGEREL.PRG //
 lib\FGRAF.PRG //
 lib\FNTXS.PRG //
 lib\FORGA.PRG //
 lib\FPED_OS.PRG //
 lib\FPRECO.PRG //
 lib\FSENH.PRG //
 lib\FSETS.PRG //
 lib\FVERREL.PRG //
 lib\FCALC.PRG //
 lib\fRTF.PRG //
 lib\xblite\XBLITE.PRG //
 lib\xblite\CORGET.PRG $(PS)

OBJCFILES = $(OBC)
CFILES = $(CF)
RESFILES = oa_dlg1.rc  oa_dlg2.rc  oa_dlg3.rc  oa_bmp1.rc  oa_bmp2.rc  oa_bmp3.rc  oa_bmp4.rc  lib\xblite\xblite.rc
RESDEPEN = oa_dlg1.res oa_dlg2.res oa_dlg3.res oa_bmp1.res oa_bmp2.res oa_bmp3.res oa_bmp4.res lib\xblite\xblite.res
TOPMODULE = MVEND.PRG
LIBFILES = $(FWH)\lib\fivehx.lib $(FWH)\lib\fivehc.lib lang.lib vm.lib rtl.lib rdd.lib macro.lib pp.lib dbfntx.lib dbfcdx.lib dbffpt.lib common.lib gtgui.lib codepage.lib ct.lib tip.lib pcrepos.lib hsx.lib hbsix.lib zlib.lib hbzip.lib png.lib $(CC_DIR)\lib\import32.lib $(CC_DIR)\lib\cw32.lib $(CC_DIR)\lib\psdk\msimg32.lib $(CC_DIR)\lib\psdk\psapi.lib
EXTLIBFILES =
DEFFILE =
HARBOURFLAGS =  -m  -w0
CFLAG1 =  -OS $(CFLAGS) -d -c -L$(HB_DIR)\lib;$(FWH)\lib
CFLAG2 =  -I$(HB_DIR)\include;$(CC_DIR)\include
RFLAGS =
LFLAGS = -L$(CC_DIR)\lib\obj;$(CC_DIR)\lib;$(HB_DIR)\lib -Gn -M -m -s -Tpe -x -aa -L$(FWH)\lib
IFLAGS =
LINKER = ilink32

ALLOBJ = c0w32.obj $(OBJFILES) $(OBJCFILES)
ALLRES = $(RESDEPEN)
ALLLIB = $(LIBFILES) import32.lib cw32.lib
.autodepend

#DEPENDS

#COMMANDS
.cpp.obj:
$(CC_DIR)\BIN\bcc32 $(CFLAG1) $(CFLAG2) -o$* $**

.c.obj:
$(CC_DIR)\BIN\bcc32 -I$(HB_DIR)\include $(CFLAG1) $(CFLAG2) -o$* $**

.prg.obj:
$(HB_DIR)\bin\harbour -D__EXPORT__ -n -go -I$(HB_DIR)\include $(HARBOURFLAGS) -I$(FWH)\include -o$* $**

.rc.res:
$(CC_DIR)\BIN\brcc32 $(RFLAGS) $<

#BUILD

$(PROJECT): $(CFILES) $(OBJFILES) $(RESDEPEN) $(DEFFILE)
    $(CC_DIR)\BIN\$(LINKER) @&&!
    $(LFLAGS) +
    $(ALLOBJ), +
    $(PROJECT),, +
    $(ALLLIB), +
    $(DEFFILE), +
    $(ALLRES)

A chamada é assim: hbmk2 mvend.hb

Aguardo, obrigado.

Link to comment
Share on other sites

Segestão:


Nesta sua versão, para evitar choques de classes, elimine a CORGET.PRG do seu projeto, isto já está automático nas novas versões. Exemplo:





SkinButtons() // Botoes Coloridos nas novas versoes

/*
#Define CLR_SOFTYELLOW RGB(255,251,225)
#Define CLR_MENTA RGB(221,255,238)
#Define CLR_HMENTA RGB(000,128,000)
*/

SetGetColorFocus( CLR_MENTA ) // EM VENDAS.CH

tGet():lDisColors := FALSE
tGet():nClrTextDis := CLR_BLUE
tGet():nClrPaneDis := CLR_SOFTYELLOW

Link to comment
Share on other sites

Valeu João,

Se tiver mais alguma dica para eu enxugar o meu sistema lhe agradeço muito.

Você tem um modelo de script para Harbour com fwh? Estou tentando compilar minha aplicação no Harbour.

Obrigado.

Sinceramente Oscar, não vejo a minima necessidade de migrar para o HARBOUR, tudo o que eu preciso, consigo em xHARBOUR.

Mas vamos lá, nada como ter a própria opinião né?

Veja resposta do Ale_Sb em:

http://fivewin.com.br/index.php?/topic/21467-compilar-com-harbour-e-fwh1306/?hl=harbour

abs,

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...