How to Add password when create a new paradox table ?(50分)

  • 主题发起人 主题发起人 Yong
  • 开始时间 开始时间
Y

Yong

Unregistered / Unconfirmed
GUEST, unregistred user!
How to Add password when create a new paradox table
 
Database Desktop中:
在CreateTable界面的右上角(table properties)中选择password Security然后
DEFINE...

程序中:
没用过。好象DBI也不行的。
 
如果自动注册(login)一个有口令保护的Paradox表,首先,这个table的属性必须为false(否则在一开始就会提示输入口令),然后把这两条指令放入form的
onCreate中去:
Session.AddPassword('My secret password');
Table1.Active := True;
关闭这个table时,可以用下面命令清除口令
RemovePassword('My secret password');
或用这条命令清除所有口令 RemoveAllPasswords;
(注:以上均只对Paradox适用)
 
现成的。(为什么不要)//来自大富翁b计划

问题标题: 怎样在Paradox表中加密码? (50分)
答案提供者: Sunset
来自: Kiven 时间:98-09-11 03:31:57 ID: 2145
如题

来自: Sunset 时间:98-9-10 21:07:30 ID: 2148
在 Database Desktop 中打开要加密的 Paradox 表,点 Restructure 按钮,打开表结构设计对话框,然后在 Table Properties 里选 Password Security,按 Defind 按钮 就可以设置密码了。以后打开这个表时都会要求输入密码。

来自: 王寒松 时间:98-9-11 0:02:20 ID: 2156
动态的添加PARADOX表的方法
下面给出的函数 AddMasterPassword 完成添加PARADOX表主口令的工作
AddMasterPassword(Table1, 'MyNewPassword')
procedure AddMasterPassword(Table: TTable; pswd: string);
const
RESTRUCTURE_TRUE = WordBool(1);
var
TblDesc: CRTblDesc;
hDb: hDBIDb;
begin
{表打开?表是独占吗?}
if (Table.Active = False) or (Table.Exclusive = False) then
raise EDatabaseError.Create('数据表必须在独占方式才可以添加口令');
{初始化表描述区 }
FillChar(TblDesc, SizeOf(CRTblDesc), 0);
with TblDesc do
begin
{ 把表名放到描述区 }
StrPCopy(szTblName, Table.TableName);
{ 把表类型放到描述区 }
StrCopy(szTblType, szPARADOX);
StrPCopy(szPassword, pswd);
{ 设置BPROTECTED为TRUE }
bProtected := RESTRUCTURE_TRUE;
end;
{ 从当前的HANDLE里得到DATABASE的HANDLE }
Check(DbiGetObjFromObj(hDBIObj(Table.Handle), objDATABASE, hDBIObj(hDb)));
{ 关闭表 }
Table.Close;
{ 添加主口令到PARADOX表里}
Check(DbiDoRestructure(hDb, 1, @TblDesc, nil, nil, nil, FALSE));
{添加一个新口令到SESSION}
Session.AddPassword(pswd);
{重新打开表 }
Table.Open;
end;
添加副口令的办法与此类似

来自: 王洁 时间:98-9-11 3:31:57 ID: 2161
不用那么麻烦,加口令用Database DeskTop.
解口令In Your Program:
Table1.DBSession.AddPassWord('Your PassWord');
Table1.Open;

编者注:王寒松给出了程序中添加口令的方法值得一试。
 
果然是来不及了,还是补充两句吧。走时看了看dbi的帮助,没有注意那个CRTblDesc结构,再看时.....
其实dbicreatetable与dbidorestruct都包含此结构,结构中有password一项,可以用代码为表添加口令,具体用法可参见bde32.hlp中的这两个命令的帮助。
 
多人接受答案了。
 

Similar threads

A
回复
0
查看
400
Andreas Hausladen
A
A
回复
0
查看
932
Andreas Hausladen
A
A
回复
0
查看
805
Andreas Hausladen
A
A
回复
0
查看
834
Andreas Hausladen
A
后退
顶部