Re: [delphi-br] Gravar informações dentro do execu tável / DLL

2009-11-27 Por tôpico Alemão
A minha máquina possui o antivirus avast. Nos varios testes que fiz ele não
reclamou de nada.

Mas é uma boa observação. Vou fazer testes com aquele norton internet
security que tenho em outra maquina.

Para o CRM Desenvolvimentos: Eu passei as duas rotinas num e-mail anterior.
Se não tiver conseguido pegar me avise mando de novo.


valeu.

2009/11/27 EmbarcaDelphi embarcadel...@yahoo.com.br



 Só uma observação aí... Já testou num computador com antivírus??? Pode
 ser que ele não autorize pensando ser um trojan...
 Alguém já testou?

 Alemão escreveu:

  Claro, vamos lá:
 
  para gravar as informações no arquivo que eu quero, estou usando um outro
  programa. Não da pro executavel gravar as informações nele mesmo, ja que
  está em uso. Portanto o meu programa de instalação é que está gravando.
  Segue o processo pra gravação:
 
  function GravarResourceInfo(const FileName, NomeRecurso, Texto: string):
  boolean;
  var hRes : THandle;
  cHD : String;
  Begin
  cHD := AnsiUpperCase(Texto);
  hRes := BeginUpdateResource(pchar(FileName),False);
  if hRes  0 then
  begin
  result := true;
  UpdateResource(hRes,RT_RCDATA,pchar(AnsiUpperCase(NomeRecurso)), 0 ,
  Pointer(cHD), StrLen(PCHAR(cHD)) + 1);
  If EndUpdateResource(hRes,False) then
  Result := true
  else
  Result := false;
  end
  else
  result := false;
  end;
 
  onde: FileName é o nome do arquivo que será atualizado.
  NomeRecurso é o nome que você irá dar para o recurso armazenado,
  para poder ler a partir do aplicativo.
  Texto é o conteúdo que você quer gravar. Pode ser qualquer
  informação.
 
 
 
  Agora dentro do meu executavel de programa, vou ler o conteúdo gravado no
  resource. Esta é a função:
 
  function LerResourceInfo(NomeRecurso: string): string;
  var ResData: HGLOBAL;
  ResInfo: HRSRC;
  Begin
  Result := '';
  ResInfo := FindResource(hInstance, pchar(AnsiUpperCase(NomeRecurso)),
  RT_RCDATA);
  if ResInfo  0 then
  begin
  ResData := LoadResource(hInstance, ResInfo);
  if ResData  0 then
  begin
  try
  Result := PChar(LockResource(ResData));
  UnlockResource(ResData);
  finally
  FreeResource(ResData);
  end;
  end;
  end;
  end;
 
 
  Funcionou muito bem.
 
  O legal é que a partir daí vc pode inclusive criptografar o texto, para
 que
  ninguem consiga ver o seu conteúdo com um editor de recursos (Ex:
 Resource
  Explorer).
 
  ps.: para testar se deu certo mesmo, é so abrir o seu programa alterado
  neste editor de recursos e ir em RCData, que la vai estar o que vc acabou
 de
  criar.
 
 
  2009/11/26 José Henrique (Zote) z...@bludata.com.brzote%40bludata.com.br
 
 
 

  



[As partes desta mensagem que não continham texto foram removidas]





-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
delphi-br-ow...@yahoogrupos.com.br
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
delphi-br-unsubscr...@yahoogrupos.com.br

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [delphi-br] Gravar informações dentro do execu tável / DLL

2009-11-26 Por tôpico Alemão
Consegui resolver o problema.

Estou gravando varias informações criptografadas dentro do próprio
executável, no momento da instalação. Encontrei uma rotina na internet que
acrescenta informações na parte de resources dos programas.

Ficou muito legal. No momento da instalação eu gravo essas informações
dentro de cada executavel e quando eles vão executar fazem a checagem das
informações. .

Obrigado pelas sugestões de todos.





2009/11/25 berdam berdamzi...@yahoo.com.br

 configure iso numa tabela com parâmetros na base de dados

 Alemão escreveu:
 
  Como faço para gravar informações dentro de um executável ou dll ja
  compilado? Pode a partir de outro executável.
 
  Como estou preocupado com copias de arquivos de meus sistemas para serem
  utilizados em outros sistemas / clientes, gostaria de gravar algumas
  informações dentro destes executpaveis no momento da instalação, ou em
  algum
  outro momento. Ou seja, cada cliente ficaria com os arquivos com uma
  informação diferente para que eu possa idenficar posteriormente caso seja
  preciso.
 
  O problema é que o arquivo já está compilado. A minha ideia é gravar
  diretamente no executavel mesmo, sem nenhum arquivo adicional, tipo
 quando
  você grava as informações de versão e empresa no programa, lá em
  project -
  options - Version info.
 
  Compilar uma versão diferente para cada cliente no momento do
  lançamento da
  versão não é uma opção, pois são muitos clientes.
 
  Alguem sabe alguma maneira de se fazer isso, ou ainda alguma outra ideia
  para esse controle que estou querendo implementar?
 
  Obrigado.
 
  [As partes desta mensagem que não continham texto foram removidas]
 
 



 

 --
  FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 






[As partes desta mensagem que não continham texto foram removidas]



Re: [delphi-br] Gravar informações dentro do execu tável / DLL

2009-11-26 Por tôpico Zote
Alemão, compartilha ai :D
--
José Henrique (Zote)
Analista de TI
Bludata Software


2009/11/26 Alemão forumdel...@gmail.com



 Consegui resolver o problema.

 Estou gravando varias informações criptografadas dentro do próprio
 executável, no momento da instalação. Encontrei uma rotina na internet que
 acrescenta informações na parte de resources dos programas.

 Ficou muito legal. No momento da instalação eu gravo essas informações
 dentro de cada executavel e quando eles vão executar fazem a checagem das
 informações. .

 Obrigado pelas sugestões de todos.

 2009/11/25 berdam berdamzi...@yahoo.com.br berdamzinho%40yahoo.com.br


  configure iso numa tabela com parâmetros na base de dados
 
  Alemão escreveu:
  
   Como faço para gravar informações dentro de um executável ou dll ja
   compilado? Pode a partir de outro executável.
  
   Como estou preocupado com copias de arquivos de meus sistemas para
 serem
   utilizados em outros sistemas / clientes, gostaria de gravar algumas
   informações dentro destes executpaveis no momento da instalação, ou em
   algum
   outro momento. Ou seja, cada cliente ficaria com os arquivos com uma
   informação diferente para que eu possa idenficar posteriormente caso
 seja
   preciso.
  
   O problema é que o arquivo já está compilado. A minha ideia é gravar
   diretamente no executavel mesmo, sem nenhum arquivo adicional, tipo
  quando
   você grava as informações de versão e empresa no programa, lá em
   project -
   options - Version info.
  
   Compilar uma versão diferente para cada cliente no momento do
   lançamento da
   versão não é uma opção, pois são muitos clientes.
  
   Alguem sabe alguma maneira de se fazer isso, ou ainda alguma outra
 ideia
   para esse controle que estou querendo implementar?
  
   Obrigado.
  
   [As partes desta mensagem que não continham texto foram removidas]
  
  
 
 
 
  
 
  --
   FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 
 
 
 
 

 [As partes desta mensagem que não continham texto foram removidas]

  



[As partes desta mensagem que não continham texto foram removidas]



Re: [delphi-br] Gravar informações dentro do execu tável / DLL

2009-11-26 Por tôpico Alemão
Claro, vamos lá:

para gravar as informações no arquivo que eu quero, estou usando um outro
programa. Não da pro executavel gravar as informações nele mesmo, ja que
está em uso. Portanto o meu programa de instalação é que está gravando.
Segue o processo pra gravação:

function GravarResourceInfo(const FileName, NomeRecurso, Texto: string):
boolean;
var hRes : THandle;
cHD : String;
Begin
  cHD := AnsiUpperCase(Texto);
  hRes := BeginUpdateResource(pchar(FileName),False);
  if hRes  0 then
  begin
result := true;
UpdateResource(hRes,RT_RCDATA,pchar(AnsiUpperCase(NomeRecurso)), 0 ,
Pointer(cHD), StrLen(PCHAR(cHD)) + 1);
If EndUpdateResource(hRes,False) then
  Result := true
else
  Result := false;
  end
  else
result := false;
end;

onde: FileName é o nome do arquivo que será atualizado.
 NomeRecurso é o nome que você irá dar para o recurso armazenado,
para poder ler a partir do aplicativo.
 Texto é o conteúdo que você quer gravar. Pode ser qualquer
informação.



Agora dentro do meu executavel de programa, vou ler o conteúdo gravado no
resource. Esta é a função:

function LerResourceInfo(NomeRecurso: string): string;
var ResData: HGLOBAL;
ResInfo: HRSRC;
Begin
  Result := '';
  ResInfo := FindResource(hInstance, pchar(AnsiUpperCase(NomeRecurso)),
RT_RCDATA);
  if ResInfo  0 then
  begin
ResData := LoadResource(hInstance, ResInfo);
if ResData  0 then
begin
  try
Result := PChar(LockResource(ResData));
UnlockResource(ResData);
  finally
FreeResource(ResData);
  end;
end;
  end;
end;


Funcionou muito bem.

O legal é que a partir daí vc pode inclusive criptografar o texto, para que
ninguem consiga ver o seu conteúdo com um editor de recursos (Ex: Resource
Explorer).

ps.: para testar se deu certo mesmo, é so abrir o seu programa alterado
neste editor de recursos e ir em RCData, que la vai estar o que vc acabou de
criar.


2009/11/26 José Henrique (Zote) z...@bludata.com.br



 Alemão, compartilha ai :D
 --
 José Henrique (Zote)
 Analista de TI
 Bludata Software

 2009/11/26 Alemão forumdel...@gmail.com forumdelphi%40gmail.com


 
 
  Consegui resolver o problema.
 
  Estou gravando varias informações criptografadas dentro do próprio
  executável, no momento da instalação. Encontrei uma rotina na internet
 que
  acrescenta informações na parte de resources dos programas.
 
  Ficou muito legal. No momento da instalação eu gravo essas informações
  dentro de cada executavel e quando eles vão executar fazem a checagem das
  informações. .
 
  Obrigado pelas sugestões de todos.
 
  2009/11/25 berdam berdamzi...@yahoo.com.br 
  berdamzinho%40yahoo.com.brberdamzinho%
 40yahoo.com.br

 
 
   configure iso numa tabela com parâmetros na base de dados
  
   Alemão escreveu:
   
Como faço para gravar informações dentro de um executável ou dll ja
compilado? Pode a partir de outro executável.
   
Como estou preocupado com copias de arquivos de meus sistemas para
  serem
utilizados em outros sistemas / clientes, gostaria de gravar algumas
informações dentro destes executpaveis no momento da instalação, ou
 em
algum
outro momento. Ou seja, cada cliente ficaria com os arquivos com uma
informação diferente para que eu possa idenficar posteriormente caso
  seja
preciso.
   
O problema é que o arquivo já está compilado. A minha ideia é gravar
diretamente no executavel mesmo, sem nenhum arquivo adicional, tipo
   quando
você grava as informações de versão e empresa no programa, lá em
project -
options - Version info.
   
Compilar uma versão diferente para cada cliente no momento do
lançamento da
versão não é uma opção, pois são muitos clientes.
   
Alguem sabe alguma maneira de se fazer isso, ou ainda alguma outra
  ideia
para esse controle que estou querendo implementar?
   
Obrigado.
   
[As partes desta mensagem que não continham texto foram removidas]
   
   
  
  
  
   
  
   --
FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 
  
  
  
  
 
  [As partes desta mensagem que não continham texto foram removidas]
 
 
 

 [As partes desta mensagem que não continham texto foram removidas]

  



[As partes desta mensagem que não continham texto foram removidas]





-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
delphi-br-ow...@yahoogrupos.com.br
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
delphi-br-unsubscr...@yahoogrupos.com.br

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [delphi-br] Gravar informações dentro do execu tável / DLL

2009-11-26 Por tôpico CRM Desenvolvimentos
*Cara compartilha com a gente ai a rotina que vc ta usando pelo menos a
parte onde vc grava no executavel?*

2009/11/26 Alemão forumdel...@gmail.com



 Consegui resolver o problema.

 Estou gravando varias informações criptografadas dentro do próprio
 executável, no momento da instalação. Encontrei uma rotina na internet que
 acrescenta informações na parte de resources dos programas.

 Ficou muito legal. No momento da instalação eu gravo essas informações
 dentro de cada executavel e quando eles vão executar fazem a checagem das
 informações. .

 Obrigado pelas sugestões de todos.

 2009/11/25 berdam berdamzi...@yahoo.com.br berdamzinho%40yahoo.com.br

  configure iso numa tabela com parâmetros na base de dados
 
  Alemão escreveu:
  
   Como faço para gravar informações dentro de um executável ou dll ja
   compilado? Pode a partir de outro executável.
  
   Como estou preocupado com copias de arquivos de meus sistemas para
 serem
   utilizados em outros sistemas / clientes, gostaria de gravar algumas
   informações dentro destes executpaveis no momento da instalação, ou em
   algum
   outro momento. Ou seja, cada cliente ficaria com os arquivos com uma
   informação diferente para que eu possa idenficar posteriormente caso
 seja
   preciso.
  
   O problema é que o arquivo já está compilado. A minha ideia é gravar
   diretamente no executavel mesmo, sem nenhum arquivo adicional, tipo
  quando
   você grava as informações de versão e empresa no programa, lá em
   project -
   options - Version info.
  
   Compilar uma versão diferente para cada cliente no momento do
   lançamento da
   versão não é uma opção, pois são muitos clientes.
  
   Alguem sabe alguma maneira de se fazer isso, ou ainda alguma outra
 ideia
   para esse controle que estou querendo implementar?
  
   Obrigado.
  
   [As partes desta mensagem que não continham texto foram removidas]
  
  
 
 
 
  
 
  --
   FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 
 
 
 
 

 [As partes desta mensagem que não continham texto foram removidas]

  



[As partes desta mensagem que não continham texto foram removidas]





-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
delphi-br-ow...@yahoogrupos.com.br
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
delphi-br-unsubscr...@yahoogrupos.com.br

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html




Re: [delphi-br] Gravar informações dentro do execu tável / DLL

2009-11-25 Por tôpico Leandro
simples, se nao quer complicacao e quer indentificar qual cliente vazou a
informacao.. cria um txt mesmo criptografado o codigo do seu cliente dentro
e sem extensao.. onde q quando executar o programa verifica se existe o
arquivo na pasta.. se nao existir informe q esta faltando tal arquivo.. ai o
cara que copiou ira la copiar ele e pumba ta ai sua prova rsrs.. simples e
funcional..

agora se quer segurança mesmo faça como eu fiz.. desenvolvi minha trava de
segurança por serial com contra chave de hadware e usuario, e data de
vencimento. Assim o serial tem uma validade de 1 mes para clientes com
internet e 3 meses para clientes sem internet. Quando expira para o clientes
com internet eu fiz um programa que capita automatico de um ftp.. para os
sem ai eu tenho q levar de um em um (poucos)

boa sorte

2009/11/25 Alemão forumdel...@gmail.com



 Como faço para gravar informações dentro de um executável ou dll ja
 compilado? Pode a partir de outro executável.

 Como estou preocupado com copias de arquivos de meus sistemas para serem
 utilizados em outros sistemas / clientes, gostaria de gravar algumas
 informações dentro destes executpaveis no momento da instalação, ou em
 algum
 outro momento. Ou seja, cada cliente ficaria com os arquivos com uma
 informação diferente para que eu possa idenficar posteriormente caso seja
 preciso.

 O problema é que o arquivo já está compilado. A minha ideia é gravar
 diretamente no executavel mesmo, sem nenhum arquivo adicional, tipo quando
 você grava as informações de versão e empresa no programa, lá em project -
 options - Version info.

 Compilar uma versão diferente para cada cliente no momento do lançamento da
 versão não é uma opção, pois são muitos clientes.

 Alguem sabe alguma maneira de se fazer isso, ou ainda alguma outra ideia
 para esse controle que estou querendo implementar?

 Obrigado.

 [As partes desta mensagem que não continham texto foram removidas]

  




-- 
Leandro, MuTukA


[As partes desta mensagem que não continham texto foram removidas]





-- 
 FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM 

* Para ver as mensagens antigas, acesse:
http://br.groups.yahoo.com/group/delphi-br/messages

* Para falar com o moderador, envie um e-mail para:
delphi-br-ow...@yahoogrupos.com.br
Links do Yahoo! Grupos

* Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/delphi-br/

* Para sair deste grupo, envie um e-mail para:
delphi-br-unsubscr...@yahoogrupos.com.br

* O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html