ActiveDelphi - Índice do Fórum ActiveDelphi
.: O site do programador Delphi! :.
 
 FAQFAQ   PesquisarPesquisar   MembrosMembros   GruposGrupos   RegistrarRegistrar 
 PerfilPerfil   Entrar e ver Mensagens ParticularesEntrar e ver Mensagens Particulares   EntrarEntrar 

Como Puxar o codigo de um arquivo .ini [RESOLVIDO]

 
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi
Exibir mensagem anterior :: Exibir próxima mensagem  
Autor Mensagem
jonathanfirst
Aprendiz
Aprendiz


Registrado: Sábado, 28 de Abril de 2012
Mensagens: 187

MensagemEnviada: Sáb Jun 08, 2013 10:16 am    Assunto: Como Puxar o codigo de um arquivo .ini [RESOLVIDO] Responder com Citação

Bom dia a todos.

Fiz um arquivo .ini e dentro tem o seguinte comando para o edit1: label1.caption + label2.caption + label3.caption;

e quando puxo esse comando pra dentro do programa quero que venha como comando e não como texto. Exemplo:

Label1.caption:= A
Label2.caption:= B
Label3.caption:= C


Tem que receber : edit1.text = ABC

mas esta recebendo: edit1.text = label1.caption + label2.caption + label3.caption;

Estou fazendo isso por questão de registro do nome do cliente, pra ficar o nome do cliente fora do sistema, e fiz esses captions pra dificultar um pouco a pirataria...

Agradeço a todos que ajudarem
_________________
O que que acho ? ... Cachorro ?
Visite http://www.lojacentraltech.com/


Editado pela última vez por jonathanfirst em Dom Jun 09, 2013 3:43 pm, num total de 1 vez
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário
Batera
Colaborador
Colaborador


Registrado: Quarta-Feira, 23 de Julho de 2008
Mensagens: 4899
Localização: Maringá

MensagemEnviada: Sáb Jun 08, 2013 10:43 am    Assunto: Responder com Citação

Qual código você está usando para gravação e leitura do INI?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário
jonathanfirst
Aprendiz
Aprendiz


Registrado: Sábado, 28 de Abril de 2012
Mensagens: 187

MensagemEnviada: Sáb Jun 08, 2013 10:46 am    Assunto: Responder com Citação

gravação: eu entro e digito digito direto no arquivo ini

leitura (no oncreate do form):

if FileExists('c:\sistema\system.ini') then
begin
caminhoREG:= TIniFile.create('c:\sistema\system.ini');
F_menu_principal.EDIT1.Text:= caminhoREG.ReadString('caminho','nome','');
reg:= caminhoREG.ReadString('caminho','nome','');
end;


com isso ele joga o conteudo do .ini dentro do edit
_________________
O que que acho ? ... Cachorro ?
Visite http://www.lojacentraltech.com/
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário
Batera
Colaborador
Colaborador


Registrado: Quarta-Feira, 23 de Julho de 2008
Mensagens: 4899
Localização: Maringá

MensagemEnviada: Sáb Jun 08, 2013 10:51 am    Assunto: Responder com Citação

Certo, agora poste como está o conteúdo do seu arquivo INI.
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário
jonathanfirst
Aprendiz
Aprendiz


Registrado: Sábado, 28 de Abril de 2012
Mensagens: 187

MensagemEnviada: Sáb Jun 08, 2013 10:56 am    Assunto: Responder com Citação

o .ini esta assim:

[caminho]
nome=label1.caption + label2.caption + label3.caption;


pode ser duas opções:
- Puxar direto como codigo
- puxar o texto e depois converte-lo em codigo dentro de variaveis
_________________
O que que acho ? ... Cachorro ?
Visite http://www.lojacentraltech.com/
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário
Batera
Colaborador
Colaborador


Registrado: Quarta-Feira, 23 de Julho de 2008
Mensagens: 4899
Localização: Maringá

MensagemEnviada: Sáb Jun 08, 2013 11:15 am    Assunto: Responder com Citação

Ah, entendi...

Jonathan, o que você pode tentar fazer é gravar só o nome do componente:
Código:
[caminho]
nome1=label1
nome2=label2
nome3=label3

E quando for ler o INI, usar o FindComponent:
Código:
var
  nome1, nome2, nome3: string;
begin
  caminhoREG:= TIniFile.create('c:\sistema\system.ini');
  nome1 := TLabel(FindComponent(caminhoREG.ReadString('caminho','nome1', ''))).Caption;
  nome2 := TLabel(FindComponent(caminhoREG.ReadString('caminho','nome2', ''))).Caption;
  nome3 := TLabel(FindComponent(caminhoREG.ReadString('caminho','nome3', ''))).Caption;

  Edit1.Text := nome1 + nome2 + nome3;
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário
jonathanfirst
Aprendiz
Aprendiz


Registrado: Sábado, 28 de Abril de 2012
Mensagens: 187

MensagemEnviada: Sáb Jun 08, 2013 11:49 am    Assunto: Responder com Citação

vou tentar e depois respondo, mas tem um porem, eu uso esses label's para guardar o nome do cliente, exemplo:

label1.caption + label2.caption + label3.caption + label4.caption

o nome vai ser JOÃO (somente exemplo)



e

label5.caption +label5.caption +label7.caption +label8.caption +label9.caption +label10.caption +label11.caption +label12.caption +label13.caption

o nome vai ser REGINALDO


Então a regra não se aplica a todos os casos, pois eu queria fazer um sistema que fosse padrão para varios clientes, e eu mudasse só a .ini
pra ficar mais facil na atualização, senão para cada cliente eu teria que fazer uma leitura de .ini diferente.
_________________
O que que acho ? ... Cachorro ?
Visite http://www.lojacentraltech.com/
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário
Batera
Colaborador
Colaborador


Registrado: Quarta-Feira, 23 de Julho de 2008
Mensagens: 4899
Localização: Maringá

MensagemEnviada: Sáb Jun 08, 2013 1:15 pm    Assunto: Responder com Citação

Eita rapaz, é uma label pra cada letra?!
Desculpa a ignorância, mas não seria melhor gravar o nome inteiro em uma chave só no arquivo INI?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário
jonathanfirst
Aprendiz
Aprendiz


Registrado: Sábado, 28 de Abril de 2012
Mensagens: 187

MensagemEnviada: Sáb Jun 08, 2013 3:03 pm    Assunto: Responder com Citação

Batera escreveu:
Eita rapaz, é uma label pra cada letra?!
Desculpa a ignorância, mas não seria melhor gravar o nome inteiro em uma chave só no arquivo INI?


seria mais facil, mas assim seria mais facil para a pirataria...
pois seria só abrir o .ini e editar o nome e sair vendendo o programa...

se eu usar os label dificultaria um pouco, ainda mais se o cliente não soubesse pra que eles servem...
_________________
O que que acho ? ... Cachorro ?
Visite http://www.lojacentraltech.com/
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário
Batera
Colaborador
Colaborador


Registrado: Quarta-Feira, 23 de Julho de 2008
Mensagens: 4899
Localização: Maringá

MensagemEnviada: Sáb Jun 08, 2013 3:15 pm    Assunto: Responder com Citação

Ah não cara, mas existem formas melhores de proteger o programa.
E outra, descobrir isso não seria muito difícil não, rsrs...

Por que você não grava o nome encriptado?
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário
jonathanfirst
Aprendiz
Aprendiz


Registrado: Sábado, 28 de Abril de 2012
Mensagens: 187

MensagemEnviada: Sáb Jun 08, 2013 3:43 pm    Assunto: Responder com Citação

da uma dica de como criptografar o arquivo ini, e como faz a leitura depois ?
_________________
O que que acho ? ... Cachorro ?
Visite http://www.lojacentraltech.com/
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário
marcosalles
Moderador
Moderador


Registrado: Quarta-Feira, 26 de Março de 2008
Mensagens: 1695
Localização: Muriaé Mg

MensagemEnviada: Sáb Jun 08, 2013 7:23 pm    Assunto: Responder com Citação

A melhor opção é a criptografia/Descriptografia

tem componentes prontos para isto ou Blibioteca pronta

mas do jeito inicial , fica aqui uma dica

vc pode utilizar o TStrings de maneira muito eficiente para ler um Arquivo Ini
principalmente utilizando as propriedades Values e ValueFromIndex

[]sdç
_________________
http://marcosalles.wordpress.com

Desenvolvo FreeLancer e presto Consultoria
Orientação Online DataSnap DbX ClientDataSet
POO , Padrões de Projeto e dúvidas de Delphi em
Geral
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário
jonathanfirst
Aprendiz
Aprendiz


Registrado: Sábado, 28 de Abril de 2012
Mensagens: 187

MensagemEnviada: Dom Jun 09, 2013 3:42 pm    Assunto: Responder com Citação

Realmente...

Criptografado fica muito melhor, e também é mais fácil do que eu pensava

Obrigado a todos que ajudaram
[Tópico resolvido]

end.
_________________
O que que acho ? ... Cachorro ?
Visite http://www.lojacentraltech.com/
Voltar ao Topo
Ver o perfil de Usuários Enviar Mensagem Particular Visitar a homepage do Usuário
Mostrar os tópicos anteriores:   
Novo Tópico   Responder Mensagem    ActiveDelphi - Índice do Fórum -> Delphi Todos os horários são GMT - 3 Horas
Página 1 de 1

 
Ir para:  
Enviar Mensagens Novas: Proibido.
Responder Tópicos Proibido
Editar Mensagens: Proibido.
Excluir Mensagens: Proibido.
Votar em Enquetes: Proibido.


Powered by phpBB © 2001, 2005 phpBB Group
Traduzido por: Suporte phpBB