Warning sobre a Xhb

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Warning sobre a Xhb

Mensagem por asimoes »

Pessoal,

Bom dia,

Qual é o equivalente a função IsAscii() ?
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
cl@udio
Usuário Nível 2
Usuário Nível 2
Mensagens: 88
Registrado em: 25 Jan 2007 16:47

Warning sobre a Xhb

Mensagem por cl@udio »

Esta classe ExcelWriterXml() esta no hb32\core\extras\hbxlsxml.
Mas esta classe nao tem no hb34.
Pelo menos nao encontrei.
[]s
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Warning sobre a Xhb

Mensagem por JoséQuintas »

Não dá pra substituir por esta?
Se é que não é a mesma...

https://github.com/FTrautwein/xlsxwriter
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
cl@udio
Usuário Nível 2
Usuário Nível 2
Mensagens: 88
Registrado em: 25 Jan 2007 16:47

Warning sobre a Xhb

Mensagem por cl@udio »

Pessoal
Boa tarde

Sabem me dizer, qual a funcao equivalente:

Código: Selecionar todos

HB_FReadLine( hHandle, @cLine, aEol )
Pesquisei com find do hbmk2:
hbmk2 -find ReadL
xhb.hbc (não instalado):
hb_FReadLine()
hb_ReadLine()
hbmisc.hbc (não instalado):
hb_FReadLn()
hbnf.hbc (não instalado):
ft_FReadLn()
Núcleo Harbour (instalado):
hb_FReadLen()
hb_vfReadLen()
[]s
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Warning sobre a Xhb

Mensagem por JoséQuintas »

Importante:

Convém confirmar as funções.
Pode ser que além de nome diferente, o comportamento seja diferente.

No CH deve indicar se é apenas tradução de nome ou não.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Warning sobre a Xhb

Mensagem por asimoes »

Como fica valtoprg equivalente?
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Warning sobre a Xhb

Mensagem por asimoes »

Se é pra matar a xhb tem que mapear todas as equivalentes, inclusive a minigui usa getprinters que tá na xhb
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar do usuário
acelconsultoria
Usuário Nível 3
Usuário Nível 3
Mensagens: 231
Registrado em: 10 Jan 2006 17:05
Localização: Itápolis-SP

Warning sobre a Xhb

Mensagem por acelconsultoria »

É complicado... a xhb tinha várias coisas interessantes, mas concordo que é como um "remendo" no Harbour.

Eu fiz um teste aqui... abri o Notepad++, fui em Localizar>Localizar em Arquivos... configurei pra procurar dentro da pasta com os fontes da xhb e pesquisei alguns dos nomes das funções que os colegas postaram aqui.

E encontrou todas. Algumas parecem fáceis de resolver. Outras nem tanto.

Por exemplo... peguei a ISASCII() que o ASimões postou... deu isto aqui:

Código: Selecionar todos

D:\Harbour\contrib\xhb\xhbis.c (6 hits)
	Line 85: #if ! defined( isascii )
	Line 86:    #define isascii( c )  ( ( unsigned ) ( c ) <= 0x7F )
	Line 150:    Printable characters have an ASCII value between 32 - 126, (0x20 - 0x7e),
	Line 173: /* determines if first char of a string is a member of the 7-bit ASCII
	Line 177: HB_FUNC( ISASCII )
	Line 181:    hb_retl( szString && isascii( ( HB_BYTE ) *szString ) );
Aí eu abri o tal arquivo xhbis.c e tava lá:

Código: Selecionar todos

HB_FUNC( ISASCII )
{
   const char * szString = hb_parc( 1 );

   hb_retl( szString && isascii( ( HB_BYTE ) *szString ) );
}
Neste caso, me parece que a função IsAscII() não tem "tradução" pronta pro Harbour. Ela foi construída em C pra atender a xhb.
Adm. Maickon Sato
Consultoria e Projetos
-------------------------------------------------------
Avatar do usuário
acelconsultoria
Usuário Nível 3
Usuário Nível 3
Mensagens: 231
Registrado em: 10 Jan 2006 17:05
Localização: Itápolis-SP

Warning sobre a Xhb

Mensagem por acelconsultoria »

Pesquisando ValToPrg no Notepad++:

Código: Selecionar todos

Search "valtoprg" (15 hits in 5 files)
  D:\Harbour\contrib\xhb\dumpvar.prg (1 hit)
	Line 234:    // TraceLog( "DShowHash: hVar, ValType( hVar ), lRecursive", hVar, ValType( hVar ), ValToPrg( hVar ), lRecursive )
  D:\Harbour\contrib\xhb\hbcompat.ch (2 hits)
	Line 92:    #xtranslate hb_ValToExp( [<x,...>] )        => ValToPrgExp( <x> )
	Line 365:    #xtranslate ValToPrgExp( [<x,...>] )        => hb_ValToExp( <x> )
  D:\Harbour\contrib\xhb\xcstr.prg (9 hits)
	Line 106: FUNCTION ValToPrg( xVal, cName, nPad, aObjs )
	Line 121:          cName := "M->__ValToPrg_Array"
	Line 140:          cRet += cPad + cName + "[" + hb_ntos( aVar:__enumIndex() ) + "] := " + ValToPrg( aVar, cName + "[" + hb_ntos( aVar:__enumIndex() ) + "]", nPad, aObjs ) + hb_eol()
	Line 156:             cRet += ValToPrg( aVar:__enumKey() ) + " => " + ValToPrg( aVar )
	Line 156:             cRet += ValToPrg( aVar:__enumKey() ) + " => " + ValToPrg( aVar )
	Line 165:    CASE "B" ; RETURN ValToPrgExp( xVal )
	Line 171:          cName := "M->__ValToPrg_Object"
	Line 191:          cRet += cPad + cName + ":" + aVar[ 1 ] + " := " + ValToPrg( aVar[ 2 ], cName + ":" + aVar[ 1 ], nPad, aObjs ) + hb_eol()
	Line 202:          Throw( xhb_ErrorNew( "VALTOPRG", 0, 3103, ProcName(), "Unsupported type", { xVal } ) )
  D:\Harbour\contrib\xhb\xhb.hbx (2 hits)
	Line 436: DYNAMIC ValToPrg
	Line 437: DYNAMIC ValToPrgExp
  D:\Harbour\contrib\xhb\xhbfunc.c (1 hit)
	Line 347: HB_FUNC_TRANSLATE( VALTOPRGEXP    , HB_VALTOEXP   )
É... dependendo da quantidade de funções, vai dar trabalho mesmo.

Lembrando que pesquisei nos fontes do HB 3.4
Adm. Maickon Sato
Consultoria e Projetos
-------------------------------------------------------
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Warning sobre a Xhb

Mensagem por JoséQuintas »

Sobre a IsAscii().... mas está usando aonde?
Se é numa LIB gráfica, a saída seria colocar essa função na LIB gráfica, até ajustarem a LIB.

Ou agrupar o que sobrar num único fonte, assim fica em destaque o que será eliminado.
O que não tiver alternativa, provavelmente terá uma equivalente antes de retirar xhb.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Warning sobre a Xhb

Mensagem por asimoes »

Eu até já tinha localizado essas funções hb_isnil e isacii nos fontes C da xhb, estão o ineressante seria agrupar ou fazer parte da aplicação, quantos aos prg´s tem que ver se vale apene fazer isso também, ou simplesmente continuar usando a xhb salvando em algum lugar pra não perder.

Outro detalhe é que a minigui usa funções da xhb não se a hwgui também tem que verificar isso.
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Avatar do usuário
fladimir
Colaborador
Colaborador
Mensagens: 2445
Registrado em: 15 Nov 2006 20:21

Warning sobre a Xhb

Mensagem por fladimir »

Eu to finalizando a migração do meu aki, fiz conforme o colega comentou, pesquisando nos fontes da xhb, pra ver as correlatas e as q estão em .C
As q estão em PRG estou avaliando.
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:

“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”
.


Até 2017    Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL


Novos Projetos:

   Desktop Visual           Windev Desktop
   Celular Android/iOS   Windev Mobile
   WEB                            Windev Web


Sejamos gratos a Deus.
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Warning sobre a Xhb

Mensagem por asimoes »

Na minha opinião o que falta é uma orientação mais clara, olha se você usa tal função substitua por essa e essa, até a gente se preparar para isso.
Imagina sistema legado que eu tenho esse caso, tem valtoprg, issascii, hb_isnil e por ai vai, substituir não é muito fácil, tem garantir que vai funcionar da mesma forma ou como eu disse pega toda a pasta xhb salva em outro lugar e continua usando, não tá funcionando ? então deixa quieto.
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
cl@udio
Usuário Nível 2
Usuário Nível 2
Mensagens: 88
Registrado em: 25 Jan 2007 16:47

Warning sobre a Xhb

Mensagem por cl@udio »

Boa tarde

asimoes

Pelo que entendi, os mantenedores vao deixar de atualizar para novas codificacoes.
O que estiver funcionando ate agora, vai continuar assim.
Ou entendi errado.

Eu mesmo estou fazendo as mudancas simplesmente para nao ficar dependente de mais uma lib.
E trabalhar tudo em puro harbour dentro do possivel.
[]s
Avatar do usuário
asimoes
Colaborador
Colaborador
Mensagens: 4919
Registrado em: 26 Abr 2007 16:48
Localização: RIO DE JANEIRO-RJ

Warning sobre a Xhb

Mensagem por asimoes »

Sim,

É isso mesmo, hoje saiu novamente o WARNING sobre a xhb, não haverá mais manutenções, quem continuar o uso será por conta e risco eu me atrevo a dizer que tudo que usamos do harbour é por conta e risco, rs
►Harbour 3.x | Minigui xx-x | HwGui◄
Pense nas possibilidades abstraia as dificuldades.
Não corrigir nossas falhas é o mesmo que cometer novos erros.
A imaginação é mais importante que o conhecimento. (Albert Einstein)
Responder