Fórum Delphi 2009 gravar senhas em DBF codigo chr e diferente. #371207
15/06/2009
0
uso dbf e tenho arquivos com senhas
porem no delphi 2009 os codigos ascii na faixa
128 a 160 não retorna o mesmo código de pagina do delphi 2,3,4,5,7,2006,2007
se usar uma variável não tem este problema(logico se a variavel for string, se for ansi acontece o mesmo).
mas se usar os componentes que acessam um dbf(apollo,ads, Table) acontece que não são gravados esta faixa, creio que é porque internamente os componentes(dbf) estão usando ansichar.
no firebird gravou normalmente.
exemplo
Edit1.Text:=Texto(128,160);
table1.fieldbyname(´campo´).AsString:=Edit1.text
na tela fica ok,mas quando se grava no dbf e perdido esta faixa.
Function Texto(x,y:Integer):String;
Var st:String;
i:Integer;
Begin
st:=´´;
for i := x to y do
begin
st := st + chr(i);
end;
Result:=(St);
End;
Alguem sabe como resolver este problema?
porem no delphi 2009 os codigos ascii na faixa
128 a 160 não retorna o mesmo código de pagina do delphi 2,3,4,5,7,2006,2007
se usar uma variável não tem este problema(logico se a variavel for string, se for ansi acontece o mesmo).
mas se usar os componentes que acessam um dbf(apollo,ads, Table) acontece que não são gravados esta faixa, creio que é porque internamente os componentes(dbf) estão usando ansichar.
no firebird gravou normalmente.
exemplo
Edit1.Text:=Texto(128,160);
table1.fieldbyname(´campo´).AsString:=Edit1.text
na tela fica ok,mas quando se grava no dbf e perdido esta faixa.
Function Texto(x,y:Integer):String;
Var st:String;
i:Integer;
Begin
st:=´´;
for i := x to y do
begin
st := st + chr(i);
end;
Result:=(St);
End;
Alguem sabe como resolver este problema?
Edmarfrazao
Curtir tópico
+ 0
Responder
Posts
16/06/2009
Edmarfrazao
Achei os problemas.
não tinha nada a ver com os componentes de acesso alias funcionou (Apollo 7,ADS 9 e Table)
o problema esta em duas rotinas minhas que utilizavam o chr codigo ASCII
uma bastou mudar a variavel de string para ansistring.
e na outra era um calculo de criptografia de senha se encontrava um numero e depois o codigo ASCII deste numero
até no delphi 2007 o codigo CHR de um numero negativo funcionava. Agora este é chr de um numero negativo é diferente.
Bastou eu somar 256 ao numero negativo que se encontra o chr correto.
não tinha nada a ver com os componentes de acesso alias funcionou (Apollo 7,ADS 9 e Table)
o problema esta em duas rotinas minhas que utilizavam o chr codigo ASCII
uma bastou mudar a variavel de string para ansistring.
e na outra era um calculo de criptografia de senha se encontrava um numero e depois o codigo ASCII deste numero
até no delphi 2007 o codigo CHR de um numero negativo funcionava. Agora este é chr de um numero negativo é diferente.
Bastou eu somar 256 ao numero negativo que se encontra o chr correto.
Responder
Gostei + 0
17/06/2009
Edmarfrazao
solução masi rapida
antes
stexto:= chr(128)
para
sTexto:=AnsiChar(chr(128))
antes
stexto:= chr(128)
para
sTexto:=AnsiChar(chr(128))
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)