Entwickler-Ecke

Dateizugriff - reourcen verschluesseln


opactium - Mo 07.01.08 19:53
Titel: reourcen verschluesseln
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:

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 - 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 - Mo 07.01.08 20:13

danke hat super mit memorystream gefunzt..