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.br>
>
>   


Responder a