Salvar configs dentro do .exe (não .res!!)

Delphi

21/05/2006

Boa noite!

Estou bolando uns esquemas em um software, mas gostaria de salvar as preferencias do usuário dentro do próprio .exe!

Detalhe: sei que isso é possível, um amigo até me sugeriu umas formas pelo OFFSET do campo edit, (editando o hexa do exe) mas achei que teria uma forma mais simples, alguem ajuda?


muito obrigado pela atenção!


Chapolin

Chapolin

Curtidas 0

Respostas

Adriano Santos

Adriano Santos

21/05/2006

Boa noite! Estou bolando uns esquemas em um software, mas gostaria de salvar as preferencias do usuário dentro do próprio .exe! Detalhe: sei que isso é possível, um amigo até me sugeriu umas formas pelo OFFSET do campo edit, (editando o hexa do exe) mas achei que teria uma forma mais simples, alguem ajuda? muito obrigado pela atenção!


Sinceramente não vejo porque não armazenar dentro do .EXE via .RES. É a melhor e mais rápida forma de gravar e acessar os dados depois.

[b:4bb7127595][url=http://forum.devmedia.com.br/viewtopic.php?t=65476&highlight=resource&sid=0e1ae3d3da7c7ba4f4486f56c1a68dd5]Neste tópico[/url][/b:4bb7127595] eu explico como embutir um executável dentro do outro. É muito fácil de fazer. Caso não saiba como compilar o arquivo .RES, basta você procurar o programa Simple Resource do Gustavo Chaurais, eu não sei o link de cór, mas na segunda-feira eu te passo se quiser. Com o plug-in fica muito mais fácil vc criar os resources.


GOSTEI 0
Chapolin

Chapolin

21/05/2006

ok, desculpe acho que me espressei mal!!!

poderia ser dentro de um .res, inclusive eu trabalho com .res, mas eu gostaria de gravar em run time de volta o arquivo, não sei se isso é possível com os .res!!

mas aguardo seu retorno de qualquer maneira!!

muito obrigado!


GOSTEI 0
Massuda

Massuda

21/05/2006

Acho que isso não é possível... o Windows (e praticamente todos os SOs) não permite que um arquivo de um programa em execução seja aberto para escrita, de modo que não seria possível você ´escrever de volta´ as preferências do usuário.


GOSTEI 0
Adriano Santos

Adriano Santos

21/05/2006

Acho que isso não é possível... o Windows (e praticamente todos os SOs) não permite que um arquivo de um programa em execução seja aberto para escrita, de modo que não seria possível você ´escrever de volta´ as preferências do usuário.


Na mosca [b:37c95ab374]Massuda[/b:37c95ab374]. Até onde eu saiba os executáveis no Windows são ´protegidos´ contra escrita/gravação. Ainda mais em se tratando de um executável gerado pelo Delphi.

O ideal mesmo é gravar estas ´configurações´ externas, arquivo INI por exemplo, ou trabalhar com resorces.


GOSTEI 0
Chapolin

Chapolin

21/05/2006

concordo com vc´s!

porém, pretendo fazer um utilitário que configure esse .exe e gere ele novamente, um amigo me passou um exemplo que uma dll faz isso, mas é bem complicado, tem que pegar o endereço do valor hexa, no caso do conteúdo do edit e alterar e gerar outro .exe. Funciona, mas a cada recompilação no delphi é necessário procurar o endereço offset novamente.

a pergunta persiste: É possível salvar um .res de volta pro .exe depois de compilado?


GOSTEI 0
Leitorbinario

Leitorbinario

21/05/2006

Cara, se ele tiver sendo execudado acho dificil de fazer.


GOSTEI 0
Chapolin

Chapolin

21/05/2006

Um amigo me passou um DLL (sem o codigo affff), mas que cumpre o que promete!!!

Vc passa o .exe de origem (obviamente não pode ser o e.exe utilizado no momento), passa o endereço ´offset´ do valor a ser substituido, o valor pretendido e ele gerará outro .exe com o valor no edit alterado.

eu agora estou com o problema de apenas pegar o endereço offset do valor com um editor hexadecimal, alguem tem alguma dica?


GOSTEI 0
Kroki

Kroki

21/05/2006

Não fique bravo,mas tem certeza que isso é realmente útil?


GOSTEI 0
Chapolin

Chapolin

21/05/2006

hehehe que é isso (bravo)

sempre tem uns maluco com idéias loca q nem eu!!


respondendo: SIM!


GOSTEI 0
POSTAR