delphi获取mdb密码
function GetPasswordFromAccess(AFileName: string): string;
var
myms: TMemoryStream;
b: array of Byte;
a: array[0..33] of Byte;
mysFileName, mysPwd: string;
I: Integer;
ver: Byte;
mybyte1, mybyte2: byte;
const
ar_key: array[0..31] of Integer=($39,$59,$EC,$37,$E2,$e6,$9C,$FA,$79,$FC,$28,$E6,$AC,$14,$8A,$60,$EB,$36,$7B,$36,$4A,
$D0,$DF,$B1,$C8,$56,$13,$43,$70,$0D,$b1,$33);
flagbyte1 = $8b;
flagbyte2 = $C3;
begin
if not FileExists(AFileName) then Exit;
mysFileName := AFileName;
myms := TMemoryStream.Create;
try
myms.LoadFromFile(mysFileName);
myms.Position := 0;
myms.Seek($14, 0);
myms.Read(ver, SizeOf(Byte)); //here we get access version ,1 is 2000 and 0 is97
SetLength(b, 2);
myms.Seek($42, 0);
myms.Read(a[0], sizeof(a));
mybyte1 := a[32] xor flagbyte1;
mybyte2 := a[33] xor flagbyte2;
for I := 0 to 15 do
begin
b[0] := ar_key[i*2] xor a[i*2];
b[1] := ar_key[i*2+1] xor a[i*2+1];
if (i mod 2 = 0) and (ver = 1) then
begin
b[0] := b[0] xor mybyte1;
b[1] := b[1] xor mybyte2;
end;
mysPwd := mysPwd + Char(b[0]+b[1]);
end;
Result := mysPwd;
finally
SetLength(b, 0);
myms.Free;
end;
end;
delphi获取mdb密码的更多相关文章
- OpenSSH后门获取root密码及防范
OpenSSH后门获取root密码及防范 相对于Windows操作系统,Linux操作系统的密码较难获取.而很多Linux服务器都配置了Openssh服务,在获取root权限的情况下,可以通过修改或者 ...
- hg211g破解获取管理员密码,可以连接路由器。默认光猫来拨号。
先通过这种方式获取telecomadmin密码:1.使用useradmin用户登录设备2.在IE地址栏输入该路径”192.168.1.1/backupsettings.html”3.点击保存设备备份配 ...
- Delphi 获取进程路径及命令行参数
Delphi 获取进程路径及命令行参数, 但有的进程获取时会报错,不知为啥 type PVOID64 = UINT64; _UNICODE_STRING = packed record Length ...
- 批量扫描互联网无线路由设备telnet,并获取WIFI密码
批量扫描互联网无线路由设备telnet,并获取WIFI密码 http://lcx.cc/?i=4513
- delphi 获取硬盘序列号、cpu号、bios号、网卡号
delphi 获取硬盘 序列号 function GetIdeNum: String; type TSrbIoControl = packed record HeaderLength : ULONG; ...
- mysql5.7.16安装 初始密码获取及密码重置
在window7下面安装mysql5.7.16,出现一个问题,在初始化时,默认生成了一个密码,导致连接不了数据库.而在5.7以前,默认密码是空的,可以不用密码即可进入数据库.5.7之后的就遇到坑了,下 ...
- Delphi 获取当前鼠标下的控件内容
Delphi 获取当前鼠标下的控件内容 主要函数: GetCursorPos://获取鼠标的位置 WindowFromPoint://获取制定point下的handle GetClassName:// ...
- Delphi获取本机的MAC地址
Delphi获取本机的MAC地址: uses NB30; function GetAdaPterInfo(lana: Char): string; var Adapter: TAdapterS ...
- Delphi获取其他exe程序版本号
delphi获取Exe文件版本信息的函数 Type TFileVersionInfo = Record FixedInfo:TVSFixedFileInfo; {版本信息} CompanyName:S ...
随机推荐
- E437: terminal capability "cm" required
执行 vi 的时候出现:E437: terminal capability "cm" required 临时解决: export TERM=xterm
- hdu 4403
水水的dfs #include <cstdio> #include <cstring> #include <cstdlib> #include <cmath& ...
- [Database]Operators
Arithmetic Operators +,-,×,÷ Comparison Operators =,<>,!=,>,<,>=,<= BETWEEN,IN,IS ...
- discuz微社区 始终显示“正在加载中”
使用DZ的tools工具一键关闭所有插件后,帮我排查了js冲突的问题,但是也带来了一系列后患: 云平台连“QQ互联”也失效了,之前云平台的各项业务已经不正常,无法开启关闭,提示“远程接口无法调用... ...
- 如何设置Samza的metrics
参考这个里边对API的调用 http://samza.incubator.apache.org/learn/documentation/0.7.0/container/metrics.html 参考这 ...
- ECSHOP报错误Deprecated: preg_replace(): The /e modifier is depr
http://www.ecshoptemplate.com/article-1850.html
- HDU 1004 ballons(map)
题意:输出颜色最多的那个颜色. 思路:水题一道. #include <iostream> #include <string> #include <map> #inc ...
- 扩展DJANGO的LISTVIEW
不用MODEL,不用QUERYSET,而用get_queryset方法来扩展LISTVIEW, 从而实现特定过滤或搜索功能. class DVListView(ListView): template_ ...
- DVB系统中PCR的生成和PCR校正
http://blog.csdn.net/chenliangming/article/details/3616720 引自<广播电视信息>2008年1月 从数字电视前端系统功能上来讲,传统 ...
- Qt: 读写二进制文件(写对象, 原始数据等)
#include <iostream>#include <QFile>#include <QImage>#include <QMap>#include ...