breeze, нельзя через Memo работать с шифрованием, путного ничего не получится. Напрямую надо работать с файлами
Add(MainForm,2953706,63,189) { Width=292 Height=305 } Add(Cryptography,15779670,315,189) { Key="2" link(onCrypt,15297968:doEvent1,[]) link(Data,11185319:Value,[]) } Add(Memo,3823181,378,91) { Left=15 Top=25 Width=80 Height=225 } Add(Memo,12030617,462,168) { Left=180 Top=25 Width=80 Height=225 } Add(Button,6931705,63,112) { Left=110 Top=200 link(onClick,13265232:doExecute,[]) } Add(ODialog,13265232,112,112) { link(onExecute,7271671:doEvent1,[]) } Add(Button,10860868,245,189) { Left=110 Top=230 Caption="шифр" Data=Integer(0) link(onClick,15779670:doCrypt,[]) } Add(FileStream,6348121,462,231) { FileName="text.xor" Mode=1 AutoCopy=0 Point(doCopyFromStream) } Add(Memory,11185319,315,112) { link(onData,3823181:doText,[]) } Add(Hub,15297968,364,189) { link(onEvent1,12030617:doText,[]) link(onEvent2,15040490:doConvert,[(392,202)(392,251)]) } Add(FileStream,5977360,203,112) { link(onLoad,2493327:doConvert,[]) } Add(Hub,7271671,168,112) { link(onEvent1,5977360:doOpen,[]) link(onEvent2,5977360:doClose,[]) } Add(Convertor,2493327,259,112) { Mode=11 link(onResult,11185319:doValue,[]) } Add(Convertor,15040490,406,245) { Mode=12 link(onResult,6348121:doCopyFromStream,[]) }
В примере оформляется автоматически тестовый файл -- test.xor, повторное его чтение и дешифрование выводит исходный текст
|