7. fejezet notebook-titkosítást
Ahhoz, hogy fejleszteni a programot, megismételve a standard notebook a hozzáadott képes adatokat titkosítani és visszafejteni.
Ábra. 7.1. menü Notepad-titkosítást
# 8662; Menü fejlesztési tárgyalt az előző fejezetben.
A menüpont Format → Wrap kell egyenlővé tenni a feladott ingatlan Igaz, amint ezt a menüpontot fog működni, mint egy kapcsoló.
Nincs több hozzá az űrlap nem szükséges, és az eredmény a regisztrációs meg kell felelnie ábra. 7.2.
Ábra. 7.2. Forma-pad titkosítást
Titkosítása szöveget a xor függvény vagy hagyományos ellensúlyozni. Ahhoz, hogy a titkosított szöveg nem megfejteni a minta, majd figyelmezteti a felhasználót, hogy válasszon a számos xor, amelyre szükség van, hogy eltolja a karaktert.
Először is kijelentem, egy globális változó xr_num típusú karakterlánc:
Most a menü parancsokat. Onclick eseménykezelő az elem Fájl → Megnyitás:
eljárás TForm1.N1Click (Sender: TObject);
// kezdődik áttekintést az aktuális mappában
ha nem, akkor OpenDialog1.Execute ShowMessage ( „fájlt nem választott!”)
mást // betölti a kiválasztott fájlt a Memo
Itt nyitunk egy szabványos tallózás párbeszédablak, és kérje a felhasználó kiválaszthatja a szöveget, vagy bármilyen más fájlt. Miután a felhasználó kiválaszt egy fájlt, töltse be a programba.
Onclick eseménykezelő az elem a File → Save:
eljárás TForm1.N2Click (Sender: TObject);
SaveDialog1 .InitialDir: = GetCurrentDir;
ha nem, akkor SaveDialog1.Execute ShowMessage ( 'fájlt nem menti!)
mást // A fájlban tárolt
Nyissa meg a File Save párbeszédablak. Miután a felhasználó kiválasztott egy helyet a fájl mentéséhez, bontsa ki a szöveget a Memo, és mentse el a kiválasztott mappában.
Onclick eseménykezelő az elem a File → Exit:
eljárás TForm1.N4Click (Sender: TObject);
Bezárás; // zárja be a programot
Onclick eseménykezelő a Szerkesztés → száma XOR:
eljárás TForm1.XoR1Click (Sender: TObject);
ha nem InputQuery (XOR ", 'Írja be a számot xor:' xr_num)
Itt jelezzük ki az ablakon a szám kiválasztásához xor. felhasználó által megadott számot kell beírni a változó xr_num.
Onclick eseménykezelő a Szerkesztés → kódolásához / dekódolásához:
eljárás TForm1.N5Click (Sender: TObject);
xr: string; // rejtjelezett
i: integer; // kezdődik a ciklus számláló
i: = 1 Hossz (Memo1.Text) do
kezdődik // végighaladni minden karaktert a szöveg
// végre a felhasználó által megadott eltolás
XR: = xr + Chr (ORD (Memo1.Text [i]) XOR StrToInt (xr_num));
// az eredeti szöveget titkosított
Erre a menü parancs titkosítja a szöveget, amelyet most a Memo mezőbe. Ez végiglépked összes karakter, és mindegyik titkosított külön-külön.
Onclick eseménykezelő a Szerkesztés → Törlés:
eljárás TForm1.N8Click (Sender: TObject);
Memo1.lines.Clear; // Tiszta Memo
Törölje a Memo mező a bennük lévő szöveget.
Onclick eseménykezelő az elem Format → Wrap:
eljárás TForm1.N9Click (Sender: TObject);
ha N9.Checked majd // ha jelölve
N9.Checked: = false; // Reset zászló
// megjeleníti egy vízszintes görgetősáv
máshol kezdődik // ha a doboz nem ellenőrzik
N9.Checked: = true; // állítsa a zászló
// eltávolítja a vízszintes görgetősáv
Erre a menü parancsot, akkor ellenőrizze, milyen állapotban most pont Format → Wrap. Ha be van jelölve, akkor visszaállíthatja azt, és megjeleníti a vízszintes görgetősáv. Egyébként, meg a zászlót, és távolítsa el a vízszintes görgetősáv.
Onclick eseménykezelő az elem Format → Betűméret:
eljárás TForm1.N10Click (Sender: TObject);
// határozza meg az összes betűtípus-beállításokat, és megjeleníti őket
// a párbeszédablakban
FontDialog1.Font.Color: = Memo1.Font.Color; // font color
FontDialog1.Font.Style:= Memo1.Font.Style; // stílus
FontDialog1.Font.Size: = Memo1.Font.Size; // méret
FontDialog1.Font.Charset: = Memo1.Font.Charset; // kódolás
FontDialog1.Font.Name:= Memo1.Font.Name; // a betűtípus nevét
ha FontDialog1.Execute majd
kezdődik // alkalmazza az összes beállítás
Mielőtt megnyit egy font párbeszédablak, definiáljuk az összes aktuális betűtípust, hogy megjelenjen a párbeszédablakban. Miután a felhasználó rákattint az ablakban, majd az OK, az összes kiválasztott betűtípus-beállításokat alkalmazzák a Memo mezőbe.
Most már csak végre kell hajtania a automatikus letöltését fájlok kapcsolatban mi notebook a fájlkezelő. Ehhez létre a OnCreate eseménykezelő a fő formája:
eljárás TForm1.FormCreate (Sender: TObject);
Str: String; // a paraméter
xr_num: = '2'; // alapértelmezett eltolás = 2
ha (ParamCount> 0), akkor kezdődik
Str: = ParamStr (1); // alkotunk egy utat, hogy az érvelés
i: = 2 ParamCount do Str: = Str + '' + ParamStr (i);
ha Str <> '' Aztán Memo1.Lines.LoadFromFile (str);
Itt beállítható a kezdeti érték az offset és a csekk jött-e olyan paramétereket a bemenő a program. Ha igen, akkor megtudja a fájl elérési útvonalát, és megjeleníti annak tartalmát a Memo mezőbe. Példa titkosítás offset 10. ábrán látható. 7.3.
Ábra. 7.3. Példa titkosítás offset 10
Notebook-titkosító program modul teljes forráskód lista mutatja a 7.1.
Listing 7.1. Jegyzettömb program modul-titkosítást
Ablakok, üzenetek, SysUtils, Változatok, osztályok, grafika, Controls Forms, párbeszédablakok, StdCtrls, menük;
írja TForm1 = osztály (TForm)