Input buffer overflow

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

pena
Usuário Nível 3
Usuário Nível 3
Mensagens: 331
Registrado em: 06 Jul 2004 18:08
Localização: CACHOEIRA DO SUL-RS

Input buffer overflow

Mensagem por pena »

Pessoal, estou com um problema, se alguem puder me ajudar

ao criar uma rotina, que no caso é o DBCREATE(), até 101 campos funciona perfeitamente, se adicionar + campos, da este erro
Input buffer overflow, alguem pode dar uma dica?
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

Re: Input buffer overflow

Mensagem por alxsts »

Olá!

Não temos o teu código mas, provavelmente você está fazendo:

Código: Selecionar todos

DbCreate('tabela', { ;
{'campo1', 'c', 10, 0},;
{'campo2', 'c', 10, 0},;
...
{'campo101', 'c', 10, 0}}) 
Quando você executa o compilador, antes o pré-processador retira todos os ; (ponto e vírgula) gerando uma linha grande o bastante para estourar o buffer de entrada do pré-processador.

Faça o seguinte:

Código: Selecionar todos

LOCAL aStru := {}
Aadd( aStru, {'campo1', 'c', 10, 0} )
Aadd( aStru, {'campo2', 'c', 10, 0} )
...
Aadd( aStru, {'campo101', 'c', 10, 0} )

DbCreate( 'tabela', aStru )
[]´s
Alexandre Santos (AlxSts)
pena
Usuário Nível 3
Usuário Nível 3
Mensagens: 331
Registrado em: 06 Jul 2004 18:08
Localização: CACHOEIRA DO SUL-RS

Re: Input buffer overflow

Mensagem por pena »

Perfeito Alexandre, obrigado, funcionando, abraços................
Responder