使用ADO 或 Data access 控件时都有设置password 的选项。
解决方案 »
- 100分,如图,怎么将淡蓝色区域全部复制成焦点单元格中的数据
- LogonUser 函数,如果密码为空,在XP下验证通过不了。
- 我是新手,从网上下载DELPHI例子打开运行时提示XXX.DCU文件不存在,请问DCU文件做什么用的?
- 老大们,我只要BORLAND 2006 STUDIO的注册机器或则注册码
- 一个简单问题,急求答案
- 散分100
- 装delphi 6 出现"msiexec"错误是什么意思
- 经验问题:请用过ACCESS的兄弟来回答,ACCESS库一般在多大的情况下速度可以接受?//准程序员
- 非常想知道的有关DCom的问题
- 开发符合中国人使用习惯的报表处理模块,请高手提供编程思路
- *********急*********请问怎样在注册表中取消默认的主页
- 关与数据库中ole字段的使用
try
Database1.Connected:=False;
Database1.AliasName:='***';
Database1.LoginPrompt:=False;
Database1.Params.Add('UserName=***');
Database1.Params.Add('Password=***');
Database1.Connected:=True;
except
ShowMessage('***');
end;
中写上user和password即可。
真对不起,怪我没说清楚,因为用户的密码可能是随时改的,所以在程序连入数据库的密码
不是说是不变的。所以说要进行对*.mdb格式的文件进行解密。
数据库是放在用户的机器上,连入A.mdb,取得数据后作为B.mdb数据库的路径和其它资料的
参数。
现已经在网上寻得解方,不过还是多谢各位。现把它显之:这是对于Office 97数据库的。、
function GetAccessPassword(FilePath:string):string;
const
xorString:array[0..12]of byte=
( $86, $FB, $EC, $37,
$5D, $44, $9C, $FA,
$C6, $5E, $28, $E6,$13 );
var
passBuf:array[0..14]of byte;
pass:array[0..14]of char;
resultPass:string;
B:Byte;
F:TFileStream;
i:integer;
begin
F:=TFileStream.Create(FilePath,fmShareDenyNone);
//office 97
try
F.Seek($42,soFromBeginning);
F.Read(passBuf,14);
for I:=0 to 13 do
begin
B := passBuf[i] xor xorString[i];
pass[i]:=char(B);
end;
pass[sizeof(pass) - 1] := #0;
resultPass:=StrPas(Pass);
finally
F.Free;
end;
result:=resultPass;
end;
end;