Fórum Salvar configs dentro do .exe (não .res!!) #321828

21/05/2006

0

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

Responder

Posts

21/05/2006

Adriano Santos

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.


Responder

Gostei + 0

21/05/2006

Chapolin

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!


Responder

Gostei + 0

22/05/2006

Massuda

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.


Responder

Gostei + 0

22/05/2006

Adriano Santos

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.


Responder

Gostei + 0

22/05/2006

Chapolin

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?


Responder

Gostei + 0

22/05/2006

Leitorbinario

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


Responder

Gostei + 0

23/05/2006

Chapolin

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?


Responder

Gostei + 0

24/05/2006

Kroki

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


Responder

Gostei + 0

26/05/2006

Chapolin

hehehe que é isso (bravo)

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


respondendo: SIM!


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar