Delphi- 数据加密和解密
Delphi进行数据加密,在数据库方面经常要使用到。从网上转载过来的,以后会经常会用到。
一、MD5加密算法
在C#/.Net里提供了MD5加密的类库。在Delphi中没有。只能自己建一个新的单位,将网上别人写的MD5加密函数拿来用。
View Code
调用方法:
var
md5: TMD5Digest; //MD5Unit.pas
passwo ...
delphi 讲的比较详细的多线程
在了解多线程之前我们先了解一下进程和线程的关系
一个程序至少有一个主进程,一个进程至少有一个线程。
为了保证线程的安全性请大家看看下面介绍 Delphi多线程同步的一些处理方案大家可以参考:http://www.cr173.com/html/16747_1.html
主线程又程为UI线程。
进程和线程的主要差别在于它们是不同的操作系统资源 ...
Delphi MSComm 实时串口通讯
MSComm控件具有丰富的与串口通信密切相关的属性,提供了对串口进行的多种操作,进而使串行通信变得十分简便。MSComm的控件属性较多,常用的属性如下:1).CommPort:设置或返回串行端口号,缺省为1。2).Setting:设置或返回串口通信参数,格式为“波特率,奇偶校验位,数据位,停止位”。例如:MSComm1.Setting:=9600,n,8,13 ...
Delphi 线程
不是原创,只是看到好的内容复制了保存下来,留着学习。
CreadteThred参考,同步参考,WaitForSingleObject参考,互斥参考,
一、在 Delphi 中使用多线程有两种方法: 调用 API、使用 TThread 类; 使用 API 的代码更简单.
1、调用 API:CreateThread()
function CreateThread( lpThreadAttributes: Poi ...
DELPHI无类型参数
DELPHI无类型参数
有不少Delphi新手对过程(函数)的无类型参数感到困惑,不知该传递什么类型。其实,Delph中有不少这类无类型参数,如常用的Move过程,只要把它当着一个Byte类型的数组看待就行了。
当使用string类型作实参传递给无类型形参时,要把s[1]作为参数传递(string类型下标是从1开始的),或者用指针转换,如PCha ...
delphi 各新版本特性收集
增强的数据库浏览器
BDP 数据提供者相应的数据库浏览器已经在几个地方作了增强。 现在可以简单的将数据从一个BDP数据提供者迁移到另外一个,这个功能能够允许你将一个数据表从一个BDP数据提供者复制另外一个上面. 这样会复制和重新建立复制目标数据表的元数据, 即使这个数据根本就是来之不同的数 ...
Delphi 调用C# 编写的DLL方法
近来,因工作需要,必须解决Delphi写的主程序调用C#写的dll的问题。在网上一番搜索,又经过种种试验,最终证明有以下两种方法可行: 编写C#dll的方法都一样,首先在vs2005中创建一个“类库”项目TestDll,using System.Runtime.InteropServices;namespace TestDll{ &nb ...
Delphi 线程Timer (TThreadTimer)
delphi 自带的Timer控件,使用方便,但它的 OnTimer 事件是在主线程中引发的。
如果在事件中执行较耗时的代码,会引起主界面假死。故实现一个线程的Timer就有必要了。
TThreadTimer 基于 TSimpleThread 继承而来。
本例源码下载
unit uThreadTimer;
interface
uses
uSimpleThread;
type
TThreadTimer = ...
Delphi练习之简单实现记事本功能
主要是使用Delphi创建一个窗口程序,实现的功能就是记事本最基本的打开和保存功能,其实是很简单就能实现的,因为原理很简单,前提是控件的属性方法要知道是哪一个,但是RAD官方帮助文档做的实在是太烂,粗略不说有的甚至都直接不写,所以中间遇到了很多问题,在此总结一下。 &n ...
delphi实现post请求
delphi实现post请求,前提头部先引用IDHttp组件
var
fhttpRequest: TIdHTTP;
PostData : TStringStream;
tmpStr : String;
begin
fhttpRequest := TIdHTTP.Create(nil);
fhttpRequest.HandleRedirects := True;//允许头转向
fhttpRequest.ReadTimeout := 5000;//请求超时设置
fhttpRequest.Request.ContentType := ...
delphi TStringList 用法详解
//TStringList 常用方法与属性 :
var
List: TStringList;
i: Integer;
begin
List := TStringList.Create;
List.Add('Strings1'); {添加}
List.Add('Strings2');
List.Exchange(0,1); {置换}
List.Insert(0,'Strings3'); {插入}
i := List.IndexOf('Strings1'); {第一次出现 ...
DELPHI 多线程(TThread类的实现)
之前学习了用API实现,让我们再学习下用DELPHI的TThread类。
先新建一个普通的工程,再新建一个线程类File>>New>>Othre>>Delphi File>Thread Object,取个名字,DELPHI会自动生成一个单元,我们只需往里简单添加功能代码,和在要使用的单元里实例引用即可。
为了节省篇幅,现把TMyThread类集成主窗体单元里,在窗体单元里声 ...
Delphi 10.2 Tokyo新增JSON类学习——TJsonSerializer
Delphi 10.3.2 for windows 7 编译通过,源码下载地址:
Tokyo 10.2新增类,效率更高更快
TJsonSerializer
需要引用单元:System.JSON.Serializers
unit uMain;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants,
System.Classes, Vcl.Graphics, Vcl.Controls, Vcl.Forms ...
Delphi内存专题
第一课:
Windows 是多任务的操作系统, 一个任务就是一个应用(应用程序)、一个应用占一个进程; 在一个进程里面, 又可以运行多个线程(所以就有了很多"多线程编程"的话题).
对 Win32 来讲, 系统给每个进程 4GB 的地址空间:低端 2GB($00000000 - $7FFFFFFF) 给用户支配;高端 2GB($80000000 - $FFFFFFFF) 留给系统使用.
文件或 ...
Delphi 实现Ping命令
Delphi 实现Ping命令
unit FtPing;
interface
uses
Windows, SysUtils, Classes, Controls, Winsock, StdCtrls;
resourcestring
SICMPRunError = 'ICMP Run Error';
SInitFailed = 'Init Failed. Maybe Winsock Verison Error';
SNoResponse = '[%0:S] No Response';
SInvalidAddr = 'IP A ...
JSON与Delphi Object的互换
Delphi自从增强了RTTI后,语言的可灵活性多大增强,Delphi的dbExpress中提供了DBXJSON,和DBXJSONReflect两个单元,可提供JSON序列化
下面的例子是实现Delphi实体对象转换为JSON字符串,以及JSON字符串转换为Delphi 实体对象的示例:(在Delphi XE3测试通过)
1 unit Unit2;
2
3 interface
4
5 us ...
Delphi ResourceString的用法
在Delphi编程的那段“古老”的日子里(就是在版本4之前),在程序中使用字符串有两个基本的方法。你可以使用字符串将它们嵌入到源程序中,例如: MessageDlg( 'Leave your stinkin' mitts off that button, fool!',mtError, [mbOK], 0); 或者,你可以创建一个文本文件(使用.rc扩展名),例如: STRINGTABLE DIS ...
Delphi - 利用DLL编程控制摄像头实现拍照、录制视频
Delphi利用avicap32.dll编程控制摄像头实现拍照、录制视频
项目需求:平板电脑(Windows系统)一维/二维码扫描功能;
需求分析:
需要扫描一维/二维码时,分两步实现。
第一步,avicap32.dll或者dspack技术实现静默打开摄像头拍照、保存BMP图片。
第二步,ZXing技术实现对一维/二维码的解析,最终获取到码值。
本篇 ...
Delphi 10.3.3最新消息
有朋友说,已经开始内测,预计10月末发版,按最新的路线图,此版本支持iOS 13及Android 64位。
2019-11-18,今天,下载及注册机都来了,快下载安装,试用吧。
需要的话加入QQ群209321818,到群文件中去下载。
注册机下载地址:https://pan.baidu.com/s/1CvZpI2f0EBVeBnAQcWf5Kg 提取码:lfji
官方原版下载地址:https://alt ...
Delphi 线程同步技术(转)
上次跟大家分享了线程的标准代码,其实在线程的使用中最重要的是线程的同步问题,如果你在使用线程后,发现你的界面经常被卡死,或者无法显示出来,显示混乱,你的使用的变量值老是不按预想的变化,结果往往出乎意料,那么你很有可能是忽略了线程同步的问题。当有多个线程的时候,经常需要去同步这些线程以访问同一个数据 ...