Gitarist писал(а):
А подскажите пожалуйста по теме, как снять скриншот и сохранить его зашифрованным?
Add(MainForm,218580,182,98)
{
Width=377
Height=235
Caption="Crypt-DeCrypt image"
Position=1
Point(Handle)
}
Add(Button,9628864,126,154)
{
Left=10
Top=140
Width=40
Caption="go"
link(onClick,13039684:doCapture,[])
}
Add(Image,12515042,651,336)
{
Left=185
Top=10
Width=160
Height=120
}
Add(Edit,75778,413,70)
{
Left=10
Top=165
Width=85
Text="123456"
DataType=2
}
Add(Button,6051066,133,350)
{
Left=210
Top=140
Width=105
Caption="Open Encrypted"
link(onClick,14569606:doExecute,[])
}
Add(Edit,6164446,406,273)
{
Left=225
Top=165
Width=85
Text="123456"
DataType=2
}
Add(ODialog,14569606,182,350)
{
Filter="Зашифрованное изображение IMG (*.img.enc)|*.img.enc"
Title="Открытие изображения"
FileName=""
link(onExecute,7024419:doOpen,[])
}
Add(FileStream,11939445,630,112)
{
FileName="111.img.enc"
Mode=1
AutoCopy=0
Point(doCopyFromStream)
}
Add(Message,174773,630,154)
{
Message="Зашифрованый файл сохранен!"
Caption="Информация"
Icon=4
}
Add(Message,1437305,560,210)
{
Caption="Ошибка шифрования/дешифрования"
Icon=1
}
Add(FileStream,7024419,238,350)
{
link(onLoad,16393140:doEvent1,[])
}
Add(Hub,16393140,287,350)
{
link(onEvent1,13076211:doUnPack,[])
link(onEvent2,7024419:doClose,[(312,363)(312,391)(228,391)(228,363)])
}
Add(Message,6008702,595,343)
{
Message="Картинка загружена."
Caption="Информация"
Icon=4
}
Add(Hub,10861664,567,336)
{
OutCount=3
link(onEvent1,12515042:doLoad,[])
link(onEvent2,6008702:doMessage,[])
}
Add(DeCrypt,13176887,399,336)
{
Mode=1
HashMode=0
Point(onError)
Point(SrcStream)
Point(Count)
Point(DstStream)
link(onDecrypt,1305783:doLoadFrom,[])
link(Key,6164446:Text,[])
link(onError,7933554:doWork3,[(473,349)])
link(SrcStream,13076211:strm,[(433,327)(391,327)(391,397)(335,397)])
link(Count,13076211:size,[(440,320)(384,320)(384,390)(342,390)])
link(DstStream,12400835:Var1,[(447,320)])
}
Add(EnCrypt,3985395,406,147)
{
Mode=1
HashMode=0
Point(onError)
Point(SrcStream)
Point(Count)
Point(DstStream)
link(onEncrypt,2611503:doPack,[])
link(Key,75778:Text,[])
link(onError,7933554:doWork1,[(473,160)])
link(SrcStream,219585:Var3,[(440,131)])
link(Count,15157355:Var2,[])
link(DstStream,566581:Var1,[(454,131)])
}
Add(Hub,5934038,581,147)
{
link(onEvent1,11939445:doCopyFromStream,[(606,153)(606,132)])
link(onEvent2,174773:doMessage,[])
}
Add(StrList,14371271,504,203)
{
Strings=#8:NO_ERROR|23:ERROR_INVALID_PARAMETER|19:ERROR_INCORRECT_KEY|21:ERROR_ACQUIRE_CONTEXT|20:ERROR_GENERATION_KEY|24:ERROR_GENERATION_KEYPAIR|18:ERROR_GET_USER_KEY|16:ERROR_DERIVE_KEY|13:ERROR_ENCRYPT|13:ERROR_DECRYPT|17:ERROR_CREATE_HASH|15:ERROR_HASH_DATA|20:ERROR_GET_HASH_PARAM|17:ERROR_SIGNED_HASH|20:ERROR_EXPORT_KEYPAIR|22:ERROR_EXPORT_PUBLICKEY|23:ERROR_EXPORT_SESSIONKEY|24:ERROR_EXPORT_EXCHANGEKEY|20:ERROR_IMPORT_KEYPAIR|22:ERROR_IMPORT_PUBLICKEY|23:ERROR_IMPORT_SESSIONKEY|24:ERROR_IMPORT_EXCHANGEKEY|26:ERROR_WRONG_CONTAINER_NAME|22:ERROR_CREATE_CONTAINER|22:ERROR_DELETE_CONTAINER|26:ERROR_CONTAINER_NOT_EXISTS|30:ERROR_CONTAINER_ALREADY_EXISTS|19:ERROR_NO_CONTAINERS|
Point(doGetString)
Point(onGetString)
link(onGetString,1437305:doMessage,[])
}
Add(HubEx,7933554,469,231)
{
link(onEvent,14371271:doGetString,[])
}
Add(ScreenShort,13039684,182,154)
{
link(onCapture,8588711:doSaveTo,[])
link(Handle,1216280:Value,[(188,145)(174,145)(174,89)(188,89)])
}
Add(Img_GDIFileProcessor,8588711,301,147)
{
Method=1
Point(Stream)
Point(onSave)
link(Stream,219585:Var2,[])
link(onSave,13289908:doEvent1,[])
}
Add(MemoryStream,3560247,315,63)
{
Point(doPosition)
}
Add(GetDataEx,219585,315,126)
{
link(Data,3560247:Stream,[])
}
Add(MemoryStream,1789860,511,70)
{
}
Add(GetDataEx,566581,511,126)
{
link(Data,1789860:Stream,[])
}
Add(MemoryStream,8711436,518,273)
{
Point(doPosition)
}
Add(GetDataEx,12400835,518,315)
{
link(Data,8711436:Stream,[])
}
Add(StreamPack,2611503,511,147)
{
DataCount=#4:strm|4:size|
link(onPack,5934038:doEvent1,[])
link(strm,566581:Var2,[])
link(size,15157355:Var3,[(524,124)])
}
Add(StreamUnPack,13076211,329,350)
{
DataCount=#4:strm|4:size|
link(onUnPack,13176887:doDecryptStream,[])
}
Add(GetDataEx,15157355,441,119)
{
Angle=3
link(Data,3560247:Size,[(328,124)])
}
Add(Img_GDIFileProcessor,1305783,504,336)
{
Method=1
Point(Stream)
Point(onSave)
link(onLoad,10861664:doEvent1,[])
link(Stream,12400835:Var2,[])
}
Add(Hub,13289908,350,154)
{
link(onEvent1,11370321:doData,[(375,160)(375,139)(249,139)(249,83)])
link(onEvent2,3985395:doEncryptStream,[])
}
Add(DoData,11370321,259,77)
{
Data=Integer(0)
link(onEventData,3560247:doPosition,[])
}
Add(Memory,1216280,182,35)
{
Default=Integer(0)
}