Ativar .log de erro
Moderador: Moderadores
Ativar .log de erro
Bom dia.
Gostaria de saber se o harbour 3.2 tem a opção de gerar o arquivo error.log, quando o .exe apresenta algum problema?
Atenciosamente,
Kleber Valentim
Gostaria de saber se o harbour 3.2 tem a opção de gerar o arquivo error.log, quando o .exe apresenta algum problema?
Atenciosamente,
Kleber Valentim
- Jairo Maia
- Moderador
- Mensagens: 2785
- Registrado em: 16 Ago 2010 13:46
- Localização: Campinas-SP
Ativar .log de erro
Não sei se tem alguma função nativa do Harbour, mas tem na xhb.lib, que funciona no Harbour.
Coloque a função xhb_ErrorSys() no inicio de seu sistema. Quando ocorrer um erro, será gerado o arquivo: error.log.
NOTA: Se você usa um ERRORSYS.PRG personalizado, ele será desconsiderado.
Coloque a função xhb_ErrorSys() no inicio de seu sistema. Quando ocorrer um erro, será gerado o arquivo: error.log.
NOTA: Se você usa um ERRORSYS.PRG personalizado, ele será desconsiderado.
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7928
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
Ativar .log de erro
Olá!
Se não gostar de hb_out.log tem uma função para colocar o nome que desejar.
Saudações,
Itamar M. Lins Jr.
O padrão do Harbour é hb_out.loggerar o arquivo error.log
Se não gostar de hb_out.log tem uma função para colocar o nome que desejar.
Código: Selecionar todos
Set( _SET_HBOUTLOG[, <cFileName>] ) -> <cOldFileName>Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
Ativar .log de erro
Boa tarde
Muito grato, pela dica Jairo, inclui o xhb_erro.sys() e gerou o error.log, mas não aparece o processo final onde o erro realmente acontece, aparecendo até o penúltimo processo chamador...
Itamar, sem o xhb_error.sys() não gerou o hb_out.log.
Tem que habilitar alguma função?
Atenciosamente,
Kleber Valentim
Muito grato, pela dica Jairo, inclui o xhb_erro.sys() e gerou o error.log, mas não aparece o processo final onde o erro realmente acontece, aparecendo até o penúltimo processo chamador...
Itamar, sem o xhb_error.sys() não gerou o hb_out.log.
Tem que habilitar alguma função?
Atenciosamente,
Kleber Valentim
- Jairo Maia
- Moderador
- Mensagens: 2785
- Registrado em: 16 Ago 2010 13:46
- Localização: Campinas-SP
Ativar .log de erro
Verdade! Testei aqui e realmente não mostra o "Trace". Mas acredito que em xHarbour funciona, em Harbour é que é diferente.
Veja aqui o fonte original: https://raw.githubusercontent.com/vszak ... xhberr.prg
Veja que na função xhb_DefError( oError ) está dessa forma:
Precisa alterar para:
Ai funciona o "trace". Em anexo o arquivo ERRORSYS.PRG já alterado, acrescente esse arquivo em seu script .Hbp:
Veja aqui o fonte original: https://raw.githubusercontent.com/vszak ... xhberr.prg
Veja que na função xhb_DefError( oError ) está dessa forma:
Código: Selecionar todos
?
? "Error at...:", ProcName() + "(" + hb_ntos( ProcLine() ) + ") in module:", ProcFile()
n := 2Código: Selecionar todos
n := 2
?
? "Error at...:", ProcName( n ) + "(" + hb_ntos( ProcLine( n ) ) + ") in module:", ProcFile( n )Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7928
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
Ativar .log de erro
Ola!
Aqui não faço nada, qualquer erro tem hb_out.log até no Linux.
Saudações,
Itamar M. Lins Jr.
Baixou onde o HB3.2 ? é GCC ?Itamar, sem o xhb_error.sys() não gerou o hb_out.log.
Aqui não faço nada, qualquer erro tem hb_out.log até no Linux.
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7928
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
Ativar .log de erro
Olá!
Saudações,
Itamar M. Lins Jr.
Esse é do 3.4Veja aqui o fonte original
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
Ativar .log de erro
Bom dia
Segue versões:
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
25/04/2018 07:33 2.016.523 gcc.exe
Atenciosamente,
Kleber Valentim
Segue versões:
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
25/04/2018 07:33 2.016.523 gcc.exe
Atenciosamente,
Kleber Valentim
-
prmuller
- Usuário Nível 3

- Mensagens: 122
- Registrado em: 11 Nov 2008 12:25
- Localização: Vila Velha - ES
Ativar .log de erro
Bom dia!
Aqui no forum temos a PCTerror() que talvez te ajude.
Veja aqui: search.php?fid[]=4
Sds,
Paulo Muller
Aqui no forum temos a PCTerror() que talvez te ajude.
Veja aqui: search.php?fid[]=4
Sds,
Paulo Muller
- JoséQuintas
- Administrador

- Mensagens: 20267
- Registrado em: 26 Fev 2007 11:59
- Localização: São Paulo-SP
Ativar .log de erro
Passei um link, mas é de um projeto particular, só está disponível pra mim.
Removi as mensagens referentes a ele.
Removi as mensagens referentes a ele.
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/
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/
-
Softwhouse
- Usuário Nível 3

- Mensagens: 324
- Registrado em: 07 Dez 2011 18:44
- Localização: Porto Alegre/RS
-
faustinofaria
- Usuário Nível 1

- Mensagens: 9
- Registrado em: 29 Mar 2011 21:15
- Localização: Itápolis / SP
Ativar .log de erro
Itamar e pessoal, boa tarde, tudo bem?!
Estou usando o Harbour 3.2.0dev com o .hbp com as opções:
-b
-osistema
-inc
-compr=yes
-lxhb
-lhbwin
-lhbct
-debug
-gui
Porém ele não gerou o hb_out.log.
Se eu acrescento o XHB_ERRORSYS(), ele gera o ERROR.LOG.
Não tenho nenhum código específico para tratar os erros.
Também testei o Set( _SET_HBOUTLOG , "ERROR.LOG" ), mas sem sucesso.
Grato pela ajuda!
Estou usando o Harbour 3.2.0dev com o .hbp com as opções:
-b
-osistema
-inc
-compr=yes
-lxhb
-lhbwin
-lhbct
-debug
-gui
Porém ele não gerou o hb_out.log.
Se eu acrescento o XHB_ERRORSYS(), ele gera o ERROR.LOG.
Não tenho nenhum código específico para tratar os erros.
Também testei o Set( _SET_HBOUTLOG , "ERROR.LOG" ), mas sem sucesso.
Grato pela ajuda!
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7928
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
Ativar .log de erro
Olá!
Na verdade eu estou estudando esse assunto.
Eu uso Hwgui, e ela já puxa o hb_out.log por isso eu achava que era padrão. Mas não é.
Saudações,
Itamar M. Lins Jr.
Eu passei informação errada.Porém ele não gerou o hb_out.log.
Na verdade eu estou estudando esse assunto.
Eu uso Hwgui, e ela já puxa o hb_out.log por isso eu achava que era padrão. Mas não é.
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7928
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
Ativar .log de erro
Olá!
Consegui entender como funciona o tratamento de erro.(acredito)
Existem dois tratamentos de erros: Os possíveis erros internos do Harbour "hb_out.log" que mudamos pela função -> Set( _SET_HBOUTLOG , "ERROR.LOG" ), e o que aparece na TELA que é o nosso erro.
Essa da tela tem que ser "DIRECIONADA" para um arquivo, senão mostra aquela mensagem PADRÃO na TELA.
Para ativar precisa direcionar o erro através da função errorblock({|e| MeuTratamentoDoErro( e, oldErr ) } )
para uma função NOSSA.
Link explicando o assunto.
https://groups.google.com/g/harbour-users/c/RX93k4dlc78
A Hwgui tem o dela, fiz confusão pois aqui nos meus sistemas tem hb_out.log e outro em HTML que criei para mandar p/ email do erro.
Saudações,
Itamar M. Lins Jr.
Consegui entender como funciona o tratamento de erro.(acredito)
Existem dois tratamentos de erros: Os possíveis erros internos do Harbour "hb_out.log" que mudamos pela função -> Set( _SET_HBOUTLOG , "ERROR.LOG" ), e o que aparece na TELA que é o nosso erro.
Essa da tela tem que ser "DIRECIONADA" para um arquivo, senão mostra aquela mensagem PADRÃO na TELA.
Para ativar precisa direcionar o erro através da função errorblock({|e| MeuTratamentoDoErro( e, oldErr ) } )
para uma função NOSSA.
Código: Selecionar todos
PROC MAIN
xhb_errorsys()
cls
use notthere new
return
compile/ link it with:
hbmk2 jun.prg xhb.hbc https://groups.google.com/g/harbour-users/c/RX93k4dlc78
A Hwgui tem o dela, fiz confusão pois aqui nos meus sistemas tem hb_out.log e outro em HTML que criei para mandar p/ email do erro.
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.