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, повторное его чтение и дешифрование выводит исходный текст