Migrando de Xharbour 1.0 para Harbour 2.0...
Moderador: Moderadores
Migrando de Xharbour 1.0 para Harbour 2.0...
Ola masters do fórum,
Tenho um sisteminha clipper, que converti com sucesso para o xharbour 1.0 , em modo texto..
Agora, estou aqui tentando compilar ele no HARBOUR 2.0, pois, todo mundo aqui do fórum vem nos alertando que o xharbour já era...
Então, as seguintes libs, não existem no Harbour com este nome. Gostaria q vcs me ajudassem e informassem qual o nome correto delas , ao usar o Harbour..
- Pcrepos.lib
- Dbfcdx.lib
- Dbfntx.lib
- Dbffpt.lib
Na compilação também foi relatado a ausência das funções abaixo.
- Hb-Fun-PrintFileraw
- Hb-Fun_Win32prn
- Hb_Fun_getprinters
- Hb_Fun_Defaults
- Hb_Fun_OpenProcess
Possivelmente, essas funções acima fazem parte de alguma dessas libs que faltam no harbour ou, simplesmente elas mudaram de nome.
Gostaria q vcs me dissessem em qual lib do HARBOUR 2.0 eu encontro essas funções.
Grato a todos,
GAbriel
Tenho um sisteminha clipper, que converti com sucesso para o xharbour 1.0 , em modo texto..
Agora, estou aqui tentando compilar ele no HARBOUR 2.0, pois, todo mundo aqui do fórum vem nos alertando que o xharbour já era...
Então, as seguintes libs, não existem no Harbour com este nome. Gostaria q vcs me ajudassem e informassem qual o nome correto delas , ao usar o Harbour..
- Pcrepos.lib
- Dbfcdx.lib
- Dbfntx.lib
- Dbffpt.lib
Na compilação também foi relatado a ausência das funções abaixo.
- Hb-Fun-PrintFileraw
- Hb-Fun_Win32prn
- Hb_Fun_getprinters
- Hb_Fun_Defaults
- Hb_Fun_OpenProcess
Possivelmente, essas funções acima fazem parte de alguma dessas libs que faltam no harbour ou, simplesmente elas mudaram de nome.
Gostaria q vcs me dissessem em qual lib do HARBOUR 2.0 eu encontro essas funções.
Grato a todos,
GAbriel
lugab
-
Stanis Luksys
- Colaborador

- Mensagens: 1329
- Registrado em: 18 Jun 2005 03:04
- Localização: São Paulo
- Contato:
Re: Migrando de Xharbour 1.0 para Harbour 2.0...
Olá,
Pode ser que o pessoal mais atualizado mate a charada só de ver os nomes, mas seria interessante você dizer como você compila quando usa o XHarbour e como compila quando usa o Harbour. Se possível copie seu(s) script(s) de compilação aqui.
*****CORRIGINDO*****/:
Provavelmente o nome das LIBs que você procura são neste formato rddntx.lib, mas não tenho certeza.
Eu estava errado no que havia escrito (por isso apaguei), as LIBs estão todas aqui sim, verifique se corresponde com as que você possue, desconsiderando o "lib" no começo do nome dos arquvos.
As funções impressora, me parece que estão na hbwin do contrib. Não sei pra que serve, e provavelmene por estar no linux, não foi gerada aqui.
Abraços!
Pode ser que o pessoal mais atualizado mate a charada só de ver os nomes, mas seria interessante você dizer como você compila quando usa o XHarbour e como compila quando usa o Harbour. Se possível copie seu(s) script(s) de compilação aqui.
*****CORRIGINDO*****/:
Provavelmente o nome das LIBs que você procura são neste formato rddntx.lib, mas não tenho certeza.
Eu estava errado no que havia escrito (por isso apaguei), as LIBs estão todas aqui sim, verifique se corresponde com as que você possue, desconsiderando o "lib" no começo do nome dos arquvos.
Código: Selecionar todos
libhbcpage.a libhbnortl.a libhbxbp.a
libgtcgi.a libhbcplr.a libhbnulrdd.a libhbziparc.a
libgtcrs.a libhbct.a libhbpcre.a liblibhpdf.a
libgtpca.a libhbdebug.a libhbpp.a liblibpng.a
libgtsln.a libhbextern.a libhbrdd.a librddcdx.a
libgtstd.a libhbgt.a libhbrtl.a librddfpt.a
libgttrm.a libhbhpdf.a libhbsix.a librddnsx.a
libharbour-2.0.0.so* libhbhsx.a libhbsms.a librddntx.a
libharbourmt-2.0.0.so* libhblang.a libhbsqlit3.a librddsql.a
libharbourmt.so@ libhbmacro.a libhbtip.a libsqlite3.a
libharbour.so@ libhbmemio.a libhbtpathy.a libxhb.a
libhbbmcdx.a libhbmisc.a libhbuddall.a libxpp.a
libhbbtree.a libhbmzip.a libhbusrrdd.a
libhbclipsm.a libhbnetio.a libhbvm.a
libhbcommon.a libhbnf.a libhbvmmt.a
Abraços!
Stanis Luksys
sites.google.com/hblibs
Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
sites.google.com/hblibs
Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
- jairfab
- Usuário Nível 3

- Mensagens: 252
- Registrado em: 21 Mai 2007 09:43
- Localização: São Paulo, Região Leste - Suzano
Re: Migrando de Xharbour 1.0 para Harbour 2.0...
Ja que voce vai mudar , por que ja nao utiliza a versao 2.1 que vem junto com a minigui extend, a funcao win32prn vai mudar de nome e so voce altera em um arquivo ch muintas funcoes do xharbour a mesma vem com nome diferente no harbour.
As libs voce pode compilar ... mas voce perceber que tem librddcdx.a librddfpt libhbpcre.a etc...
o leonardo ja postou aqui no forum o nome da função correspondente da class winprn
As libs voce pode compilar ... mas voce perceber que tem librddcdx.a librddfpt libhbpcre.a etc...
o leonardo ja postou aqui no forum o nome da função correspondente da class winprn
Delpji 7, harbour 3.2, xharbour 1.2.3, Bcc7, Minigw, Minigui 19.11, hwgui 2.20, FiveWin 19.05 Gtwvw, Gtwvg, C# VS 2017
Re: Migrando de Xharbour 1.0 para Harbour 2.0...
Obrigado Stanio e Jaifab
Jairfab , o que eu localizei na pasta do meu Harbour 2, foi:
Rdcdx.lib
Rdntx.lib
e
Rdfpt.lib
É diferente dos nomes q vc postou: LibRddCdx.lib LibRddntx.li e Librddfpt.lib
1- Serã que são a mesma coisa ?
2-Nao achei a lib correspondente a Pcrepos.lib
3-Tb não achei nada que tenha as classes win32prn..
Não sei como vcs conseguem usar o harbour, com toda essa carência de informações..
Jairfab , o que eu localizei na pasta do meu Harbour 2, foi:
Rdcdx.lib
Rdntx.lib
e
Rdfpt.lib
É diferente dos nomes q vc postou: LibRddCdx.lib LibRddntx.li e Librddfpt.lib
1- Serã que são a mesma coisa ?
2-Nao achei a lib correspondente a Pcrepos.lib
3-Tb não achei nada que tenha as classes win32prn..
Não sei como vcs conseguem usar o harbour, com toda essa carência de informações..
lugab
-
Stanis Luksys
- Colaborador

- Mensagens: 1329
- Registrado em: 18 Jun 2005 03:04
- Localização: São Paulo
- Contato:
Re: Migrando de Xharbour 1.0 para Harbour 2.0...
Olá,
jairfab escreveu: É diferente dos nomes q vc postou: LibRddCdx.lib LibRddntx.li e Librddfpt.lib
1- Serã que são a mesma coisa ?
Stanis Luksys escreveu:...verifique se corresponde com as que você possue, desconsiderando o "lib" no começo do nome dos arquvos.
lugab escreveu:3-Tb não achei nada que tenha as classes win32prn..
Stanis Luksys escreveu:As funções de impressora, me parece que estão na hbwin do contrib. Não sei pra que serve, e provavelmene por estar no linux, não foi gerada aqui.
Stanis Luksys
sites.google.com/hblibs
Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
sites.google.com/hblibs
Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
Re: Migrando de Xharbour 1.0 para Harbour 2.0...
Gracias, Stanis..
Obrigado por repetir sua resposta, pq eu falhei em não esmiuçar ela..
Coloquei a HBWIN.LIB e finalmente apareceu a função Win32Prn()
Tb achei e ja to compilando com as libs Rddcdx.lib e a Rddntx.lib.
Ainda falta descobrir qual a lib do harbour que corresponde a Pcrepos.lib
É que ainda falta achar as funções: hb_fun_Openprocess e hb_fun_Default e, provavelmente, essas 2 funções que ainda faltam, se encontram nessa lib, né
gabriel
Obrigado por repetir sua resposta, pq eu falhei em não esmiuçar ela..
Coloquei a HBWIN.LIB e finalmente apareceu a função Win32Prn()
Tb achei e ja to compilando com as libs Rddcdx.lib e a Rddntx.lib.
Ainda falta descobrir qual a lib do harbour que corresponde a Pcrepos.lib
É que ainda falta achar as funções: hb_fun_Openprocess e hb_fun_Default e, provavelmente, essas 2 funções que ainda faltam, se encontram nessa lib, né
gabriel
lugab
-
Stanis Luksys
- Colaborador

- Mensagens: 1329
- Registrado em: 18 Jun 2005 03:04
- Localização: São Paulo
- Contato:
Re: Migrando de Xharbour 1.0 para Harbour 2.0...
Olá,
Olhando aqui, me parece que a função foi apenas renomeada para hb_processOpen() . Você pode usar um translate para corrigir isso. Acho que se você usar aquele cabeçalho tradutor que o clrod escrevou no outro tópico, deve resolver.
E essa função Default(), você usa pra alguma coisa? Segundo lí no guia do xharbour, essa função só serve pra atribuir um valor padrão numa variável. Talvez dê pra você fazer um translate também, caso já não tenha naquele arquivo tradutor.
Abraços!
Olhando aqui, me parece que a função foi apenas renomeada para hb_processOpen() . Você pode usar um translate para corrigir isso. Acho que se você usar aquele cabeçalho tradutor que o clrod escrevou no outro tópico, deve resolver.
E essa função Default(), você usa pra alguma coisa? Segundo lí no guia do xharbour, essa função só serve pra atribuir um valor padrão numa variável. Talvez dê pra você fazer um translate também, caso já não tenha naquele arquivo tradutor.
Abraços!
Stanis Luksys
sites.google.com/hblibs
Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
sites.google.com/hblibs
Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
Re: Migrando de Xharbour 1.0 para Harbour 2.0...
Isso mesmo, Stanis.
No Harbour, O nome mudou para hb_processOpen().
Agora, sobre a função Default(), eu não sei o q fazer, pois me faltam recursos técnicos, pra isso.
A função está nas linhas de comando abaixo e eu sei q vou ter q substitui-las:
gabriel
No Harbour, O nome mudou para hb_processOpen().
Agora, sobre a função Default(), eu não sei o q fazer, pois me faltam recursos técnicos, pra isso.
A função está nas linhas de comando abaixo e eu sei q vou ter q substitui-las:
Código: Selecionar todos
default(@cParam,'')
default(@lWait,.f.)
lugab
-
Stanis Luksys
- Colaborador

- Mensagens: 1329
- Registrado em: 18 Jun 2005 03:04
- Localização: São Paulo
- Contato:
Re: Migrando de Xharbour 1.0 para Harbour 2.0...
Opa,
Como eu disse, o que essa função faz é apenas atribuir um valor para uma variável, que é passada por referência.
Não posso garantir porque só tenho aqui o código do Harbour, mas provavelmente se você criar algo assim, já deveria resolver:
Cara, não tenho certeza disso, mas tente desta forma e nos diga se deu certo...
Um outra forma seria achar essa função lá nos fontes do xHarbour e agregar em alguma lib sua, ou mesmo do harbour, e recompilar.
Como eu disse, o que essa função faz é apenas atribuir um valor para uma variável, que é passada por referência.
Não posso garantir porque só tenho aqui o código do Harbour, mas provavelmente se você criar algo assim, já deveria resolver:
Código: Selecionar todos
Function default( xvar, xvalor )
xvar = xvalor
Return NILUm outra forma seria achar essa função lá nos fontes do xHarbour e agregar em alguma lib sua, ou mesmo do harbour, e recompilar.
Stanis Luksys
sites.google.com/hblibs
Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
sites.google.com/hblibs
Apoiar e se utilizar de projetos opensource não é uma questão de boicote, mas sim de liberdade.
Utilize, aprimore e distribua.
Re: Migrando de Xharbour 1.0 para Harbour 2.0...
Valeu, Stanis..
Vou fazer isso mesmo. Vou olhar os fontes do abandonado xharbour e se não achar a dito-cujo, aproveito sua CONTRIB ao harbour...
Qdo conseguir, eu vou postar aqui, pra servir a outros trainees "a la eu", q vem neste fórum aprender com vcs...
Muito obrigado por tudo,
Gabirel
Vou fazer isso mesmo. Vou olhar os fontes do abandonado xharbour e se não achar a dito-cujo, aproveito sua CONTRIB ao harbour...
Qdo conseguir, eu vou postar aqui, pra servir a outros trainees "a la eu", q vem neste fórum aprender com vcs...
Muito obrigado por tudo,
Gabirel
lugab
Re: Migrando de Xharbour 1.0 para Harbour 2.0...
Olá
Vocês estão carregando a xhb.lib na compilação? E o xhb.ch?
Já deram uma olhada na hbcompat.ch? Lá dá para entender muita coisa do que muda e lá inclusive traduz o openprocess p/ processopen e viceversa, já que o ch é para traduzir do Harbour p/ o xHarbour também.
Se não quiser criar uma função para a default, pode usar algo assim: (não testei, fiz agora)
#xcommand default(@<v1>, <x1>) => IF <v1> == NIL ; <v1> := <x1> ; END ;
ou
#xtranslate default(@<v1>, <x1>) => Iif(<v1> == NIL , (<v1> := <x1>), NIL)
Para funcionar como função em qualquer lugar.
Isso é o que essa função defalut deveria fazer.
Ou pode usar o comando DEFAULT <xVar> TO <valor> [, xVarN TO xValorN] que já estã definido no Harbour.
T+
Vocês estão carregando a xhb.lib na compilação? E o xhb.ch?
Já deram uma olhada na hbcompat.ch? Lá dá para entender muita coisa do que muda e lá inclusive traduz o openprocess p/ processopen e viceversa, já que o ch é para traduzir do Harbour p/ o xHarbour também.
Se não quiser criar uma função para a default, pode usar algo assim: (não testei, fiz agora)
#xcommand default(@<v1>, <x1>) => IF <v1> == NIL ; <v1> := <x1> ; END ;
ou
#xtranslate default(@<v1>, <x1>) => Iif(<v1> == NIL , (<v1> := <x1>), NIL)
Para funcionar como função em qualquer lugar.
Isso é o que essa função defalut deveria fazer.
Ou pode usar o comando DEFAULT <xVar> TO <valor> [, xVarN TO xValorN] que já estã definido no Harbour.
T+
Re: Migrando de Xharbour 1.0 para Harbour 2.0...
Obrigado, Clrod, e Stanis.
A inclusão de xhb.lib E xhb.ch, permitiu ao compilador traduzir o Openprocess() bonitinho.
E pesquisando na hbcompat.ch, constatei que default() virou Hdefault()
Agora deu zero erro e tudo é só alegria..
Ja executei e percebi que o Dbedit() se comporta de forma estranha, bem diferente de como se comportava no xharbour()
Mas isso agora é uma outra história, a se desvendar o enredo.
Grato a todos
Gabriel
A inclusão de xhb.lib E xhb.ch, permitiu ao compilador traduzir o Openprocess() bonitinho.
E pesquisando na hbcompat.ch, constatei que default() virou Hdefault()
Agora deu zero erro e tudo é só alegria..
Ja executei e percebi que o Dbedit() se comporta de forma estranha, bem diferente de como se comportava no xharbour()
Mas isso agora é uma outra história, a se desvendar o enredo.
Grato a todos
Gabriel
lugab
Re: Migrando de Xharbour 1.0 para Harbour 2.0...
Olá
HDefault não é outra coisa, é um Default para uma estrutura do tipo Hash, por isso o H no início.
O Dbedit do Harbour é compatível como Clipper e não com o xHarbour.
T+
HDefault não é outra coisa, é um Default para uma estrutura do tipo Hash, por isso o H no início.
O Dbedit do Harbour é compatível como Clipper e não com o xHarbour.
T+
Re: Migrando de Xharbour 1.0 para Harbour 2.0...
Clrod, desculpe, mas eu não entendi.
Como assim "O Dbedit do Harbour é compatível como Clipper e não com o xHarbour." ?
Tu pode explicar , num nível um pouco mais baixo ?
Como assim "O Dbedit do Harbour é compatível como Clipper e não com o xHarbour." ?
Tu pode explicar , num nível um pouco mais baixo ?
lugab
Re: Migrando de Xharbour 1.0 para Harbour 2.0...
Olá
O Harbour faz o que fazia no Clipper ao contrário do xHarbour que modificou a comportamento de várias funções. A preocupação do Harbour é ser 100% compatível com Clipper e extender a linguagem com funcionalidade nova não alterar o que já existe.
T+
O Harbour faz o que fazia no Clipper ao contrário do xHarbour que modificou a comportamento de várias funções. A preocupação do Harbour é ser 100% compatível com Clipper e extender a linguagem com funcionalidade nova não alterar o que já existe.
T+
