Adattárolást exe

Az adatok tárolása egy EXE

Ne mondd el senkinek a tiszteletben mesterek, hogyan kell tárolni néhány adatot az EXE-fájlt, hogy a végrehajtható program. És ahogy olvastam, amikor elindul? Köszönöm.







Megértem, hogy írsz programok Windows alatt. akkor a válasz „nem”, mert operációs rendszer blokkolja írni, és törölje a program végrehajtható fájlt.
alternatívaként -, akkor írj a registry, akkor létrejön.

Azaz, nem tudok lépést tartani minden tömb ismertetett, a test a program, saját fájlt, majd menti a fájlt ClientDataset komponens adatokat az EXE.

Hozzon létre egy további folyamat, amely várja a befejezése kanyarban te, akkor írja élőszóval shnik és záródik.

adatok tárolhatók a forrás
és még van egy funkciója az erőforrások megtakarítása
de nem polzomalsya őket, így a kísérlet. )

Tárolhatja az összes, csak zárja be a programot először.

IMHO megkérdezettek pontosan hol ez az egész lehetséges (források hiányában zagolovoy exe-Schnick, vagy mi van még.), És segítségével pontosan milyen funkciókat / eljárások, majd olvasni? A rekord összegyűjtjük egyéb eszközöket.

Abszolút. Mert Delphi tárolását teszi lehetővé, például képek a szervezetben az EXE. Hogyan lehet elérni ugyanazt az adataikat.

Próbáltam ilyet. Működik, de maga az algoritmus csúnya és görbe.
Amikor fut eheshnike vele, akkor másolja a számot egy másik nevet. Tulajdonítanak ennek másolatát a végén minden adat (ellenőrzött - eheshnik továbbra is működni fognak). Befejezése előtt a program, hogy hozzon létre egy batch fájlt, hogy távolítsa el a fő eheshnik, és a másolatot átnevezni a megbízónak. A következő futam lehet tekinteni, mint egy hagyományos bináris adatokat.
Igaz antivirusniki is esküsznek az ilyen fájlok kiegészítő megjegyzések - gyanítják, hogy a rosszindulatú programok, amelyek általában ez messze az igazságtól :)

hogyan kell olvasni - véleményem megteheti: az elején a blokk adatait teszel valamilyen jel - például egy változót string = „mylabel”; majd a program megnyitja magát (exe-Schnick) futási időben, és keres, hogy címke - miután rendre vannak az adatok






és a kódot prsto vetik alá őket, kalapács - miután ez egy nagyon címke
majd kiolvassuk blockread olvasni vperemennuyu az azonos típusú

de, hogy hová, és mint olyan helyet találni a rekord alatt - nem tudom, én is arra utalnak két lehetőség van: vagy a fejléc exe-ember, vagy azok helyett az erőforrások, a hely, ahol újra elfelejteni elején ismét az erőforrás - a címke

rövidebb - az ilyen ötleteket. nem próbálta, de megy

2lipskiy:
rekord az úton, akkor is létrehozhatja dll-ku és fut keresztül rundll32.exe - így lehetséges, és dörzsölte magát

Igen, szükség van, hogy Che és rögzített végén az akkor tekinthető normális működnie kell

A beltéri EXE írható:
eljárás TForm1.Button1Click (Sender: TObject);
var
Fájlkezelõ: integer;
s: string [10];
kezdődik
ha edit1.text<>„” Akkor
kezdődik
s: = edit1.Text;
Fájlkezelõ: = FileOpen ( "1.EXE", fmOpenReadWrite);
FileSeek (fájlkezelõ, sizeof (s), 2);
FileWrite (fájlkezelõ, s, sizeof (s));
FileClose (fájlkezelõ);
végén;
végén;

A következőképpen szól:
eljárás TForm1.Button2Click (Sender: TObject);
var
Fájlkezelõ: integer;
s: string [10];
kezdődik
Fájlkezelõ: = FileOpen ( "1.EXE", fmOpenReadWrite);
FileSeek (fájlkezelõ, -SizeOf (s), 2);
FILEREAD (fájlkezelõ, s, sizeof (s));
ShowMessage (s);
FileClose (fájlkezelõ);
végén;

De ahhoz, hogy mentse a tömb helyett sizeof (ek) ütés
Sizeof (a [1]) * KolvoElementovMassiva
Így a módszer csak tárolására alkalmas tömbök standard típusok (Integer, Real, karakterlánc stb) a strukturált típusok nem vizsgálják.

Köszönöm mindenkinek, de fájdalmasan valahogy hanyag (nem állítja, hogy minden együttérző, és csak furcsa, hogy semmi sem könnyebb)

Mi nem értem, mi ez a láng? Egy személy nem kell, így legalább meg kell változtatni az adatokat, meg kell csak, hogy tartsa meg a kérdést, akkor a válasz ugyanaz: a források.

> Kon (25.03.02 01:13)
Igen, ez valóban nem olyan nehéz. Ha nem kell megváltoztatni az adatokat, akkor az erőforrás, amire szüksége van. Resources valójában ez csak a bináris adatok, azaz a Természetesen, akkor lehet, hogy mit szeretne látni őket magam. Normál típusú erőforrás nem létezik csak, hogy megkönnyítse a munkát a leggyakrabban használt erőforrásokat. Mindössze annyit kell tennie, hogy hozzon létre egy erőforrás típus, és tegye az adatokat, majd velük együtt dolgozni, a támogatás API f-TIONS
FindResource, FindResourceEx, LockResource, LoadResource vagy fel lehet használni erre a célra TResourceStream osztályban. De ismétlem, ismétlem, az adatok csak olvashatók.

Memória: 0,75 MB
Idő: 0.033 c




Kapcsolódó cikkek