自己对DELPHI学习的一点体会

源代码在线查看: 怎样在paradox表中加密码 (2000年8月17日).txt

软件大小: 771 K
上传用户: pipinooad
关键词: DELPHI
下载地址: 免注册下载 普通下载 VIP

相关代码

				怎样在Paradox表中加密码 (2000年8月17日) 
				
				本站更新  分类:   作者:srw  推荐:   阅读次数:598  
				(http://www.codesky.net)  
				
				--------------------------------------------------------------------------------
				
				下面给出的函数 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;
				
				添加副口令的办法与此类似 
				
				 
				 
							

相关资源