Autor Beitrag
opactium
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 20



BeitragVerfasst: Mo 07.01.08 19:53 
hallo zusammen

ich habe eine resource, die niemand klauen soll. also will ich sie verschluesseln. das habe ich auch bereits getan, und haenge dann die verschluesselte resource ganz normal als resource an mein projekt drann.
nun will ich die aber zur laufzeit entschluesseln. ich moechte das so machen, dass ich dann zur laufzeit zwei resourcen habe, also die verschluesselte und die entschluesselte. wie mache ich das nun aber?

so habe ich es bereits versucht:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
res := TResourceStream.Create(hinstance,'crypted',rt_rcdata);
res1 := TResourceStream.Create(hinstance,'decrypted',RT_rcdata);
for i := 0 to res.Size do
begin
res.Read(aktual, 1);
aktual := chr(ord(aktual)-2);
res1.Write(aktual,1);
end;
res.Free;


da sagt er mit aber, dass er die resource decrypted nicht finden kann...
aber ich will die ja neu ertstellen!!!

hat jemand rat?

ThX

Moderiert von user profile iconChristian S.: Code- durch Delphi-Tags ersetzt
Chryzler
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1097
Erhaltene Danke: 2



BeitragVerfasst: Mo 07.01.08 20:02 
Kann ja nicht gehen. Du kannst ja nur Resourcen aus der EXE auslesen, aber nicht neue erstellen, denn dann müsste ja die EXE überschrieben werden. D.h. du musst die Resource auslesen, entschlüsseln, und im Speicher halten, also zum Beispiel in einem TMemoryStream.
opactium Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 20



BeitragVerfasst: Mo 07.01.08 20:13 
danke hat super mit memorystream gefunzt..