Fórum Function não retorna valores #411230
05/01/2012
0
function Tfrmproutupdate.le_arq_ini(TEXTO: String): Boolean;
var ArqIni: tIniFile;
begin
ArqIni := tIniFile.Create(C:\Sistema\executavel\CONFIG.INI);
try
TEXTO := ArqIni.ReadString(Atualizacao, Build, TEXTO);
finally
ArqIni.Free;
end;
end;o TEXTO recebe o valor normal só quando passa para finally o TEXTO fica vazio. eu chamo a function pelo oncreate do form
procedure Tfrmproutupdate.FormCreate(Sender: TObject); begin le_arq_ini(LBBuild.Caption); end;
e quando chega no label esta vazio como informaianteriormente. se alguem tiver alguma ideia ou outro exp.
Helio Souza
Curtir tópico
+ 0Posts
05/01/2012
Helio Souza
function Tfrmproutupdate.le_arq_ini(TEXTO: String): Boolean;
grato.
Gostei + 0
05/01/2012
Alan Souza
function Tfrmproutupdate.le_arq_ini(TEXTO: String): String; var ArqIni: tIniFile; begin ArqIni := tIniFile.Create(C:\Sistema\executavel\CONFIG.INI); try Result := ArqIni.ReadString(Atualizacao, Build, TEXTO); finally ArqIni.Free; end; end;
procedure Tfrmproutupdate.FormCreate(Sender: TObject); begin LBBuild.Caption := le_arq_ini(LBBuild.Caption); end;
agora, se vc precisa que seja boolean, use var pra passar o parâmetro:
function Tfrmproutupdate.le_arq_ini(var TEXTO: String): Boolean; var ArqIni: tIniFile; begin ArqIni := tIniFile.Create(C:\Sistema\executavel\CONFIG.INI); try TEXTO := ArqIni.ReadString(Atualizacao, Build, TEXTO); result := true; finally ArqIni.Free; end; end;
procedure Tfrmproutupdate.FormCreate(Sender: TObject); begin le_arq_ini(LBBuild.Caption); end;
aí dependendo de condição, vc passa o Result para False (se ocorrer algum erro, por exemplo) e valida com if na chamada da função...
Gostei + 0
05/01/2012
Helio Souza
aqui ele funciona blz:
function Tdmvendas.descriptografasenha(Dsenha: String):Boolean;
begin
dmvendas.criptografa.Action := atDecryption;
dmvendas.criptografa.Input := dmvendas.sdsentrasistemaUSU_SENHA.Value;
dmvendas.criptografa.Execute;
try
Dsenha := dmvendas.criptografa.Output;
result := True;
finally
ShowMessage(Dsenha);// oque devo usar aq. eu coloquei um showmessage só para ver se deu certo
end;
end;aq. ele da o result e fica, mais quando vou mandar buscar o resultado ele não traz nada.
procedure Tfrmlogin.btentrarClick(Sender: TObject);
var
mensagem, Ssenha: String;
begin
mensagem:= Nome ou Senha do Usuário inválidos.;
dmvendas.descriptografasenha(Ssenha);
ShowMessage(Ssenha);
if senha_usu.Text = Ssenha then
begin
...
...
Gostei + 0
06/01/2012
Helio Souza
dmvendas.criptografa.Action := atDecryption;
dmvendas.criptografa.Input := dmvendas.sdsentrasistemaUSU_SENHA.Value;
dmvendas.criptografa.Execute;
try
Dsenha := dmvendas.criptografa.Output;
result := True;
finally
ShowMessage(Dsenha); //não quero esse showmessage devo colocar oque para finalizar ou deixo sem valor?
end;grato pela paciencia
Gostei + 0
06/01/2012
Alan Souza
dmvendas.criptografa.Action := atDecryption;
dmvendas.criptografa.Input := dmvendas.sdsentrasistemaUSU_SENHA.Value;
dmvendas.criptografa.Execute;
Dsenha := dmvendas.criptografa.Output;
result := True;
except
result := False;
end;
Gostei + 0
06/01/2012
Helio Souza
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)