Eu só raramente uso QUIT, acho que nesse sistema não tem nenhum.
Em princÃpio, não tem recursividade não, pois ele está funcionando normalmente.
Eu provoquei o erro bem no inÃcio do sistema, para justamente não ter a influência de nenhum begin sequence, nem de qualquer outra coisa.
Fiz agora o seguinte teste:
#require "rddsql"
#require "sddodbc"
#include "dbinfo.ch"
// REQUEST SQLMIX, SDDODBC, DBFNTX
#include "inkey.ch"
#include "hbgtinfo.ch"
// #include "dbinfo.ch"
#define RDDI_CONNECT 1001
#define RDDI_DISCONNECT 1002
#define RDDI_EXECUTE 1003
REQUEST SQLMIX, SDDODBC, DBFNTX
ANNOUNCE RDDSYS
REQUEST HB_LANG_PT
REQUEST HB_CODEPAGE_PT850
*REQUEST HB_Codepage_PTISO
PROCEDURE Main
* Set( _SET_CODEPAGE, "PTISO" )
*Hb_GtInfo( HB_GTI_COMPATBUFFER, .F. )
RDDSETDEFAULT("DBFNTX")
HB_SETCODEPAGE('PT850')
HB_LANGSELECT('PT')
public usooff :="N"
public jaculto :="N"
cls
public us :="I"
dt=date()
hr=time()
SET( _SET_EVENTMASK, INKEY_ALL - INKEY_MOVE ) // + HB_INKEY_GTEVENT )
SET COLOR TO W/B,b/w
do case
case file("c:\windows\noteb.cpd")
setmode(37,105)
case file("c:\wsoft\install\cacic\modulos\colanvi\lixo\inforum.cpd") .or. file("c:\lixo\inprom.cpd")
setmode(45,125)
otherwise
setmode(42,110)
endcase
vers="29/07/15"
?aaa
function ANSI(cTxt) // 1 texto a ser convertido para o padrÃ’o ANSI
local I
local aTab
local nCod
aTab:= {;
199,252,233,226,228,224,229,231,234,235,232,239,238,236,196,197,;
201,230,198,244,246,242,251,249,255,214,220,248,163,216,215,131,;
225,237,243,250,241,209,170,176,191,174,172,189,188,161,171,187,;
35, 35, 35,124, 43,193,194,192,169, 43,124, 43, 43,162,165, 43,;
43, 43, 43, 43, 45, 43,227,195, 43, 43, 43, 43, 43, 61, 43,164,;
240,208,202,203,200,185,205,206,207, 43, 43, 35, 35,166,204, 35,;
211,223,212,210,245,213,181,254,222,218,219,217,253,221,175,180,;
173,177, 61,190,182,167,247,184,186,168,183,185,179,178, 35, 32 }
for I:= 1 to Len(cTxt)
nCod:= ASC(SubStr(cTxt,I,1))
if nCod >= 128
cTxt:= Stuff(cTxt,I,1,Chr(aTab[nCod -127]))
endif
next
return cTxt
Tirei tudo que uso, deixei só as configurações iniciais e o que é necessário para o errorsys funcionar.
Daà funcionou, o erro tá na linha 55: ?aaa. E chamou corretamente a errorsys e me informou do erro.
Mas dentro do meu sistema não funciona. E o pior é que eu não faço ideia de como começar a procurar.