Página 1 de 1

Input buffer overflow

Enviado: 10 Jan 2011 23:04
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?

Re: Input buffer overflow

Enviado: 10 Jan 2011 23:22
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 )

Re: Input buffer overflow

Enviado: 11 Jan 2011 09:27
por pena
Perfeito Alexandre, obrigado, funcionando, abraços................