Página 4 de 5
Harbour maluco ????
Enviado: 15 Ago 2021 12:00
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.
Harbour maluco ????
Enviado: 15 Ago 2021 13:16
por JoséQuintas
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.
Harbour maluco ????
Enviado: 15 Ago 2021 13:42
por JoséQuintas

- jpaexe.png (8.12 KiB) Exibido 2430 vezes

- jpa.png (7.3 KiB) Exibido 2430 vezes
O mais engraçado....
Renomeia a função, e o EXE aumenta 24KB (compactado)
Sinal de que agora sim, tá repetida.
Harbour maluco ????
Enviado: 15 Ago 2021 15:10
por JoséQuintas
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:
Se alguém conseguir explicar porque mostra Harbour 3.4..... ou porque mingw 7.3....
Harbour maluco ????
Enviado: 15 Ago 2021 15:14
por JoséQuintas
Ok, parece que o Harbour 3.2 vém com mingw 7.3
Versão do mingw explicada....
Harbour maluco ????
Enviado: 15 Ago 2021 15:22
por JoséQuintas
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.
Harbour maluco ????
Enviado: 15 Ago 2021 15:29
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.
Harbour maluco ????
Enviado: 15 Ago 2021 15:35
por JoséQuintas
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.
Harbour maluco ????
Enviado: 15 Ago 2021 16:02
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.
Harbour maluco ????
Enviado: 15 Ago 2021 19:02
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.
Harbour maluco ????
Enviado: 15 Ago 2021 19:19
por JoséQuintas
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.
Harbour maluco ????
Enviado: 15 Ago 2021 19:49
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'
Harbour maluco ????
Enviado: 15 Ago 2021 20:10
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.
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.
Harbour maluco ????
Enviado: 17 Ago 2021 09:42
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
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.
Harbour maluco ????
Enviado: 17 Ago 2021 09:48
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.