Conflito entre Harbour e tbrowse.prg externo

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

Moderador: Moderadores

JorgeGoias
Usuário Nível 1
Usuário Nível 1
Mensagens: 2
Registrado em: 15 Ago 2021 11:53
Localização: Sao Paulo/SP

Harbour maluco ????

Mensagem por JorgeGoias »

Simples.
Você está com problemas de namespaces.
http://forums.fivetechsupport.com/viewt ... =3&t=25901

De alguma forma está chamando outra função SetColorFocus() que retorna Nil.
O harbour está reclamando de somar strings com Nil, dai o erro 1081.

Sugiro rever seu processo de compilação e refazer tudo do zero.
E evitar nomear funções próprias com nomes parecidos com o harbour.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Harbour maluco ????

Mensagem por JoséQuintas »

tbrowse.png
Ou....
De alguma forma o mingw se comportou igual ao BCC e incluiu tbrowse repetido.
Pra acusar que essa função está repetida... só assim.
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
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Harbour maluco ????

Mensagem por JoséQuintas »

jpaexe.png
jpaexe.png (8.12 KiB) Exibido 2343 vezes
jpa.png
jpa.png (7.3 KiB) Exibido 2343 vezes
O mais engraçado....
Renomeia a função, e o EXE aumenta 24KB (compactado)

Sinal de que agora sim, tá repetida.
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
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Harbour maluco ????

Mensagem por JoséQuintas »

hb32a.png
Agora que endoidou de vez.
Baixei os binários do Harbour 3.2
Ajustei os fontes pra conseguir compilar com o Harbour 3.2
O resultado:
hb32.png
Se alguém conseguir explicar porque mostra Harbour 3.4..... ou porque mingw 7.3....
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
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Harbour maluco ????

Mensagem por JoséQuintas »

Ok, parece que o Harbour 3.2 vém com mingw 7.3
Versão do mingw explicada....
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
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Harbour maluco ????

Mensagem por JoséQuintas »

hb34.png
Voltei o Harbour 3.4

E aí ? alguma explicação ?

Toda compilação é com pasta limpa.
A pasta do Harbour tem o compilador C, então, trocando a pasta troca tudo.
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
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Harbour maluco ????

Mensagem por JoséQuintas »

Com certeza compilou com Harbour 3.2, porque deu até os erros de incompatibilidade.
Só compilou após resolver as diferenças.
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
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Harbour maluco ????

Mensagem por JoséQuintas »

hb32b.png
Aliás, nem foram muitas incompatibilidades.
Já tinha feito uma parte antes, e só teve essa alteração, o resto dos erros foram resolvidos adicionando -Dhb32

Essa alteração foi por erro em run-time,
A HBWIN do Harbour 3.2 não aceita do jeito que estava.
Mais um comprovante de que o EXE foi compilado com Harbour 3.2 e LIBs do Harbour 3.2.

Agora sim, sem explicação mesmo.
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
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Harbour maluco ????

Mensagem por JoséQuintas »

E antes que alguém pergunte....

Recompilei

- sefazclass
- libjpa
- e por último o aplicativo

Aqui só usa pasta \harbour

Deixei o Harbour fora de uso como \harbour32 ou \harbour34

PATHs somente para \harbour e \harbour\comp\mingw64\bin, ou seja, para o Harbour default.

Com certeza, meu redimensionamento automático de ícones não funciona no 3.2, e foi o que aconteceu.
A única coisa estranha foi mostrar como sendo Harbour 3.4 na tela.
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
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Harbour maluco ????

Mensagem por JoséQuintas »

Então.... recapitulando....

Harbour 3.2 baixado da internet, o Harbour nightly, que vém pronto com compilador mingw 7.3
Removidas todas as referências ao Harbour 3.4 da máquina
Apenas a pasta \harbour com harbour 3.2 e compilador C
Aplicativo totalmente recompilado
A função que retorna a versão do Harbour.... retorna 3.4

Mas.... numa compilação em separado, de um único fonte test.prg, mostrou correto.

Minhas libs são geradas na pasta \harbour\addons.
Significa que ao trocar de Harbour, automaticamente não existe mais lib na versão anterior.
CADA pasta nova que compilo, TUDO da pasta temp é apagado, e toda compilação fica na pasta temp.
Significa que não tem restos entre compilações.
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
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Harbour maluco ????

Mensagem por JoséQuintas »

hb32a.png
hb32b.png
Isto é o que tem menos importância, mas no Harbour 3.4 o EXE fica menor, talvez porque não tenha opcionais.
400KB a menos sem compactar, 143KB a menos compactado.
Mas o nome está errado no 3.2.
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
vailton
Colaborador
Colaborador
Mensagens: 390
Registrado em: 17 Nov 2005 19:08
Localização: Brasil
Contato:

Harbour maluco ????

Mensagem por vailton »

Se alguém conseguir explicar porque mostra Harbour 3.4..... ou porque mingw 7.3....
Olá José,
Notei um detalhe importante sobre o caso de exibir uma versão do Harbour e compilar com outro: você está usando o hbmk2 e ele tem uma cópia do compilador harbour embutido. Talvez você já tenha resolvido o caso, mas se ocorrer dele puxar o hbmk2.exe incorreto exibirá a versao incorreta no momento da compilação MAS exibirá uma outra na hora de executar o aplicativo pois a informação embutida dentro do teu .EXE vem das LIBs incorporadas no momento da linkedição.

Se houver algo com SET PATH puxando hbmk2 de um local incorreto ou .LIBs indevidas entrando no processo de linkedição justificaria este comportamento.
O.o'
Vailton Renato
"No dia mais claro, na noite mais escura... o bug sucumbirá ante a minha presença"

E-mail/MSN: contato@vailton.com.br
Skype: vailtom
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Harbour maluco ????

Mensagem por JoséQuintas »

Foi erro meu mesmo.

Na tela "sobre o aplicativo" está usando a função do Harbour, e é aonde eu estava olhando.
Mas na tela de apresentação está fixo "Harbour 3.4".

Desta vez foi erro meu mesmo.
hb34.png
O correto mostra também informações sobre a versão, não apenas 3.4
Eu deveria ter olhado a outra tela também.
Conferi usando fonte errado.
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
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Harbour maluco ????

Mensagem por JoséQuintas »

SYSTEM ERROR
Error BASE/1066 Argument error: conditional
Called from TBROWSE:DOCONFIGURE(1313)
Called from TBROWSE:STABILIZE(750)
Called from BROWSEADORC(37)
Called from BROWSEADO(203)
Called from JPCADASTROCLASS:GRIDSELECTION(95)
Esse é o erro de hoje.

Nesta linha

Código: Selecionar todos

      IF _DECODE_FH( @cHeading, @nHeight, @nWidth )
A função?

Código: Selecionar todos

STATIC FUNCTION _DECODE_FH( cName, nHeight, nWidth )

   LOCAL i

   nHeight := nWidth := 0
   IF HB_ISSTRING( cName )

      IF ! cName == ""
         /* When last character of heading/footing is ';' then CA-Cl*pper
         * does not calculate it as separator
         */
         IF hb_URight( cName, 1 ) == _TBR_CHR_LINEDELIMITER
            cName := hb_StrShrink( cName )  /* FIXME: use hb_UStrShrink() */
         ENDIF
         nHeight := hb_tokenCount( cName, _TBR_CHR_LINEDELIMITER )
         FOR i := 1 TO nHeight
            nWidth := Max( nWidth, hb_ULen( hb_tokenGet( cName, i, _TBR_CHR_LINEDELIMITER ) ) )
         NEXT
      ENDIF

   ELSE
      /* CA-Cl*per bug, it accepts non character values though cannot
      * display them properly
      */
      /* nHeight := 1 */
      cName := ""
   ENDIF

   RETURN nHeight != 0
Ela retorna verdadeiro ou falso.

A impressão que tenho é que ou a pilha de funções fica maluca, ou a pilha de variáveis.
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
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Harbour maluco ????

Mensagem por JoséQuintas »

Putz....

Um erro antigo... que deixo pra lá....
É quando entra e sai do aplicativo, sem fazer nada.
No caso de terminal usando HBNETIO.... dá erro na hora de fechar o ADO.
Não que seja o HBNETIO.... mas pode ser uma pista dessa coisa maluca.
Aqui deu erro, e aqui acaba não usando HBNETIO.
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/
Responder