bom dia amigos... existem algo de errado no código abaixo? * * *function LimparHistorico(const DtInicio, DtFim : String):Integer;* *var* * aInicio : Array[0..6] of char;* * aFim : Array[0..6] of Char;* *begin* *....* * FillChar(aInicio,7,#0);* * StrPCopy(aInicio, Copy(DtInicio,4,7));* * * * FillChar(aFim,7,#0);* * StrPCopy(aFim, Copy(DtFim,4,7));* ...
Simplesmente, quando passa pelo segundo StrPCopy, a primeira posição do primeiro vetor (aInicio) fica com o valor #0, ou seja, vazia, independente do valor que estiver armazenado no vetor... notei que se tivessem outros StrPCopy durante o código, sempre o primeiro vetor acima teria sua primeira posição bagunçada.... não faço a menor idéia do porque isso está acontecendo... Estranho que na mesma unit, tenho o seguinte código * FillChar(aAno,4,#0);* * StrPCopy(aAno,Copy(DateToStr(Date),7,4));* * * * FillChar(aMes,2,#0);* * StrPCopy(aMes,Copy(DateToStr(Date),4,2));* * * Neste caso, fica normal... Se alguém tiver alguma idéia do que possa fazer já me ajuda muito Obrigado.. *Diego Garcia* [As partes desta mensagem que não continham texto foram removidas]