作者: e梦缘 (wnhoo)概述:在这篇文件中,讲述对单个文件的数据加密、数据压缩、自解压的实现。同样,也可以实现对多个文件或文件夹的压缩,只要稍加修改便可实现。关键字:加密压缩、Zlib、流、资源文件引 言:在日常中,我们一定使用过WINZIP、WINRAR这样的出名的压缩软件,就是我们开发软件过程中不免要遇到数据加密、数据压缩的问题!本文中就这一技术问题展开探讨,同时感谢
转载
2024-05-24 20:37:28
920阅读
---- 现在很多的应用程序都有这样一种功能,当用户选择最小化窗口时,窗口不是象平常那样最小化到任务栏上,而是“最小化”成一个任务栏图标。象FoxMail 3.0 NetVampire 3.0等都提供了这样的功能。实现这样的功能实际上并不复杂,在窗口最小化时,窗口会发出WM_SYSCOMMAND消息,你只要需要截取Windows的WM_SYSCOMMAND消
转载
2023-12-11 10:34:25
55阅读
使用API的时候,需要特别小心数据长度,我在初次使用的时候简直被弄的晕头转向,遂作此文留个备忘。一般没有指定长度的参数,默认都是16(AES_BLOCK_SIZE)个字节。输出数据的长度一般都是16字节的倍数,否则会出现数组越界访问。以下API中,encrypt表示加密,decrypt表示解密。1.生成加密/解密的Key
int AES_set_encrypt_key(const unsigned
AddShell()源自于前一段时间有写的addsection()新增区段代码,
在增加区段代码的基础上,追加了
1.修改启动入口点位置
2.增加一段壳头xor $50的代码function AttachStart-function AttachEnd
这一段代码是先填充,再被修改成合适原EXE的壳头
3.修改原启动代码入口点所在区段的段属性可写并进行xor $50运算加密
不支持addsh
一.感慨 好久好久都没有写博客了,没有android 项目练手,一直在这段空闲的时间里面学习数据结构,还有android 源码和设计模式。虽然很枯燥,但是从书中得到的有些东西确实让我收获不少。坚持每天看两个小时的书,我相信我的目标总有一天会实现的。 最近公司leader分我一个任务,那就是学习Delphi。从来没有接触过这门语言,于是开始正常的百度,google。有这么一句话让我开始喜欢这门语
转载
2024-07-14 06:44:46
187阅读
1、 系统功能1)、数据压缩使用DELPHI提供的两个流类(TCompressionStream和TDecompressionStream)来完成数据的压缩和解压缩。2)、数据加密压缩通过Delphi编程中“流”的应用实现数据加密,主要采用Tstream的两个派生类Tfilestream、Tmemorystream 来完成的;其中数据压缩部分采用1)的实现方法3)、双击压缩文件自动关联解压通过更改注册表的实现扩展名与程序文件的关联,主要采用Tregistry;并且,API函数SHChangeNotify实现注册效果的立即呈现。4)、可生成自解压文件自解压的文件实现数据压缩1)与数据加密压缩2)
转载
2012-08-08 11:49:00
137阅读
2评论
// 加密方法一(通过密钥加密解密)function EncryptString(Source, Key: string): string;function UnEncryptString(Source, Key: string): string;//加密方法二(通过移位加密解密)function
转载
2019-05-11 18:57:00
478阅读
2评论
本文目标:了解Delphi的字符串类型字符编码的检测与转换简体繁体转换0. 导言看完“.Net与字符编码(理论篇)”,我们明白了字符是自然语言中的最小单位,在存储和传输的过程中可以使用三种编码方法:ASCII、DBCS以及Unicode。常见的DBCS编码有GB2312、GBK和BIG5,而UTF-8、UTF-16和UTF-32则是最常用的Unicode编码类型。1. 字符串类型在Delphi中有
(**************************************************************) (* Advanced Encryption Standard (AES) *) (* Interface Unit v1.3 *) (* ...
转载
2019-05-11 19:28:00
599阅读
2评论
SQLite是一个很好用的单机数据库,体积小巧,支持大多数SQL 92语法,速度快,健壮,使用和分发都很简单。但是免费开源版并不提供加密功能,需要加密得购买原作者的一个插件,价格$2000!我们只好使用第三方的加密版本,这是被逼的。当然还有一个选择就是,在开源的C文件中已经预留了加密接口,有能力的可以自己去实现。闲话休提。第三方的加密版本已经有人实现了,还不止一个。下面分别介绍一下:※
2004-08-20 17:31作者:NoteXPad 责任编辑:方舟永远记住,无论你是用 SDK 还是借用 VCL 来创建窗口,都要遵循 Windows 的游戏规则,即先注册窗口类,然后再创建窗口实例,在消息循环中写实现代码。你还要知道 Windows 已经为了我们预注册了多个窗口类,例如“Edit”、“ComboBox”,这时候我们要做的就是直接创建这些窗口,无需注册窗口类了;在
转载
2023-11-21 08:01:55
83阅读
//分析结果 WM_AnalysisResult = WM_USER + 1009; SendMessage(G_MainHandle, WM_AnalysisResult, 0, 0); procedure WMAnalysisResultUpdate(var AMessage: TMessage
转载
2017-05-18 15:19:00
85阅读
2评论
MessageBox对话框是比较常用的一个信息对话框,其不仅能够定义显示的信息内容、信息提示图标,而且可以定义按钮组合及对话框的标题,是一个功能齐全的信息对话框信息提示图标,而且可以定义按钮组合及对话框的标题,是一个功能齐全的信息对框。 1、函数原型及参数
转载:http://blog.csdn.net/lailai186/article/details/8770643 事情的导火线是GIF图片的显示. 在应用程序中, 利用三方的GIFImage.pas可以很好的显示GIF图片.这次, 要在一个DLL中显示一个GIF图片. 还是像往常一样拖个TImag
转载
2016-06-22 09:10:00
204阅读
2评论
delphi的消息处理不是好理解的,我在学习时有种云里雾里的感觉,网上的资料太微观化,不利于初学者在脑子里建立起大的框架。没有这个大框架学习微观处理知识时就不知为什么要这么处理。经过一段时间的摸索,自己有了一些了解,这些也是刚学习时对我困惑最严重的,今天写出来供参考,也许理解的不全面或不对,还肯请过来人指点,不胜感激!
1.delphi消息处理独特之处:
delphi处理消息有自己的独特之处。
原创
2011-08-02 16:26:08
1347阅读
1、windows的消息驱动体系 在windows系统中,消息传递是实现对乡间通信和控制的主要手段。可以额系统都以消息驱动的方式工作。系统中发生的用户输入操作、显示信息的改变、系统环境参数变化等所有时间都以系统定义消息的形式出现在相关的应用程序和窗口。所以程序设计的主要任务就是为这些消息的处理设计代码。 在应用程序中,发送者可以通过发送消息要求接收者完成相应的处理。当程序运行时
转载
2024-08-10 09:24:28
53阅读
Delphi是Borland公司的一种面向对象的可视化软件开发工具。 Delphi集中了Visual C++和Visual Basic两者的优点:容易上手、功能强大,特别是在界面设计、数据库编程、网络编程方面更有其独特的优势。 Delphi中的消息 消息是Windows发出的一个通知,它告诉应用程序某个事件发生了。在Delphi中,大多数情况下Windows的消息被封装在VCL的事件中,我们只需处理相应的VCL事件就可以了,但如果我们需要编写自己的控件、截获或过滤消息就必须深入研究Win32的消息处理机制。 在Delphi中消息以TMessage记录的方式定义。打开Message.pas文件,
转载
2013-08-30 13:51:00
106阅读
2评论
消息值 注释 WM_NULL $0000 WM_CREATE $0001 WM_DESTROY $0002 WM_MOVE $0003 WM_SIZE $0005 WM_ACTIVATE $0006 WM_SETFOCUS $0007 WM_KILLFOCUS $0008 WM_ENABLE $00
转载
2020-02-12 16:25:00
293阅读
2评论
BIO -> 普通NIO -> select NIO -> epoll 同步非阻塞多路复用linux内核优化的结果linux内核没有实现异步IO同步:轮询socket和读取数据的线程都是用户线程非阻塞:线程轮询socket 没有数据的时候不会阻塞BIO每一个socket都需要一个线程去阻塞读取recvfrom系统调用一直是阻塞的 一个线程处理一个socket问题:多个线程、线程切
首先有两个自定的转换函数: function myStrToHex(s:string):string; //字串转16进制 var TmpStr:string; i:integer; begin TmpStr:=''; for i:=1 to Length(s)do TmpStr:=TmpStr+IntToHex(ord(s[i]),2)...
转载
2019-06-18 22:50:00
122阅读
2评论