通用MIS权限管理系统 (50分)

K

kkyy

Unregistered / Unconfirmed
GUEST, unregistred user!

http://delphi.mychangshu.com/dispdoc.asp?id=700
http://member.netease.com/~siyi
没有SQLSERVER2000数据库的朋友,可在这里下载动画演示:
http://member.netease.com/~siyi/qxDemo.exe
关于通用权限管理工具
最近想做个新系统,所以更新了一下通用权限管理工具,希望它比以前更通用,更实用。
权限管理是MIS软件中很重要的一环。很多国内较出名的MIS软件厂商都设计了较完
善的也具有自己特色的权限管理模块。 但对于很多没那么规范的软件商(包括个人或小
创作团体),他们经常是接到一单, 设计一套权限管理系统,每套都不同;有的则不够
重视,随便写上一段,哪里都拷过去用;有的也曾费尽心机,但结果总不能令自己满意。
其实仔细想一下,每套软件的权限虽然各不相同,但其实所需实现的功能是相同的。权
限管理是MIS软件中可代码重用性最高的一个模块,也是重复开发率最高的一个模块。
做一个最通用的权限管理模块,支持尽可能多的数据库后台,支持尽可能多的前台开发
工具,尽最大可能方便软件工作者设计维护和最终用户使用,当然,还要保证权限管理
技术的先进性,即注重灵活性的安全性。基于这样的设想,我参考了多种权限管理系统
后,设计实现了这一个通用权限管理工具。
我不敢说:减少代码重用,从我做起。但也希望自己的工作能为大家带来方便。
希望大家喜欢这个工具。有Bug一定烦劳报告一下,我们一起来完善它。
使用前先恢复MSSQLSERVER2000数据库。
DLL版提供脚本,可加入其它库中。
通用权限管理工具, 是开寅软件工作室经参考多种权限系统后精心策划制作的一款
软件工具, 支持多权限分组等各种先进功能. 使用ADO连接数据库, 支持所有ADO和ODBC
支持的数据源. MSSQLserver脚本稍加修改后即可加入到各种数据库中. 不管是应用到
什么系统都无任的方便. Exe版免费使用测试, DLL版可使用API调用,VC, BC, VB, PB,
Delphi皆可使用. 使用费RMB100元,RMB200元即可获得全部delphi6源代码!
else
系列的成员:

E书制造 超级光盘管家
快速清理 程序管理员
网页处理工具 开寅压缩
慢慢清理注册表 Windows备份文件查找
老李牌虚拟光驱

商业软件信息:
本软件工作室与深圳国光软件科技有限公司联合开发多年的系列商业软件,
包括酒店信息管理系统、餐饮娱乐管理系统、桑拿沐足管理系统、物业管
理系统、电话计费系统等,与我们的其它软件一样,具有优良的品质和性能,
更加可靠和方便,并已经在多家单位成功应用。
有意或索取资料者请给我们来信联系。 Email:llii@163.net 李岳金
 
K

kkyy

Unregistered / Unconfirmed
GUEST, unregistred user!
用十个函数,搞定权限管理方方面面的所有事。
 
K

kkyy

Unregistered / Unconfirmed
GUEST, unregistred user!
超级光盘管家 在这:http://delphi.mychangshu.com/dispdoc.asp?id=644
 
L

lqy

Unregistered / Unconfirmed
GUEST, unregistred user!
這個都要用錢買﹐還寫什么軟件﹐
 
K

kkyy

Unregistered / Unconfirmed
GUEST, unregistred user!
哈哈,卖给需要的人。
1、自己写的不一定是好的。
2、自己写未必有时间和精力。
 

小马哥9

Unregistered / Unconfirmed
GUEST, unregistred user!
不要这样
 

Unregistered / Unconfirmed
GUEST, unregistred user!
可不可以共享啊
 
K

kkyy

Unregistered / Unconfirmed
GUEST, unregistred user!
这就是以共享方式发布啊。
 
K

kkyy

Unregistered / Unconfirmed
GUEST, unregistred user!
有人问我的地址我写一下:
321409
浙江省缙云县大源镇稠门一村10号
李岳金
一卡通:057150424609
 
K

kkyy

Unregistered / Unconfirmed
GUEST, unregistred user!
函数声明
软件设计者完全掌握权限管理不需要再绞尽脑汁, 使用通用权限管理工具DLL版,只需声明10个函数即可, 若是也让我沾一下你的光彩, 多声明一个ShowAbout也才11个。
本权限管理DLL测试了四种通用MIS开发工具的函数测试,均可使用。
C++Builder、VB、PB请点击进入相应的页面查看,VC++我不熟, 但用的人全是高手, 我也就不献丑了, 照BCB的稍改一下就行。
下面以Delphi的函数调用进行详细说明。
Delphi(DLL版提供本例本窗口的Delphi6.0和C++Builder5.0界面和代码)
强烈建议交付用户使用时更改DLL的名称以及改声明DLL的名称为相应的名称,以防止某些自以为是的人对其进行乱开发并破坏系统安全。
procedure ShowAbout;stdcall;
external 'qxDll.dll';
{这个不用说了吧?}
function ConnectDB(cnStr, user, pwd : PChar;
dt, enpwd : PChar): integer;
stdcall;
external 'qxDll.dll';
{连接数据库
参数说明:
cnStr : 就是上面要取得的连接参数
user : 登录数据库的用户ID
pwd : 登录数据库的密码
dt : 日期格式为yyyy-MM-dd, 为空时取计算机日期
enpwd : 密码加密因子
返回值 :
0, 连接成功
1, 连接失败
}
procedure DisConnectDB;stdcall;
external 'qxDll.dll';
{断开数据库连接}
procedure EditqxList(tran : integer);stdcall;
{参数说明: 1 : 用事务处理, 0 : 不用事务处理}
{打开权限列表维护窗口, 可不用声明, 因为最终用户不需要}
procedure qxManager(tran : integer);
stdcall;
external 'qxDll.dll';
{参数说明: 1 : 用事务处理, 0 : 不用事务处理}
{打开权限管理窗口, 这个最重要}
function LoginCheck(userID, pwd, dt, ErrStr : PChar;
sysErr : integer) : integer;stdcall;
external 'qxDll.dll';
{用户登录你的系统
参数说明:
userID : 登录到管理系统的用户名
pwd : 登录到管理系统的密码
dt : 同上一个函数,主要考虑到有的系统几天不关机,
好让软件知道刚才想登录的用户过期了没有
ErrStr : 如果用户登录失败, 你想在DLL中显示自己的信息时使用,
可以为空字符串
sysErr : 登录失败处理方式,
0, 由你的程序自己处理
1, 仅显示ErrStr所提供的信息
2, 由DLL来显示出错信息
返回值 :
0, 登录成功
1, 用户被禁止使用
2, 用户使用期限已过
3, 密码不正确
4, 无此用户
}
function ShowLoginForm(Cap, dt : PChar;
var userID: PChar;var sec : integer) : integer;stdcall;
{用本DLL的登录对话框处理用户登录}
{参数说明:
Cap : 登录对话框的标题
dt : 同上一个函数,主要考虑到有的系统几天不关机,
好让软件知道刚才想登录的用户过期了没有
userID : 返回刚才登录用户的userID的缓冲区
sec : 10以上, 按秒计限时登录, 10以下,按次计限次登录.
登录成功时返回userID的长度
返回值 :
0, 登录成功
1, 登录限定次数已到
2, 登录限定时间已到
3, 用户取消
下面分别是两种限定的登录对话框图示:

}
function ChangUserPwd(userID,oldPwd,newPwd,dt : PChar): integer;stdcall;
{更改用户密码
参数说明:
userID : 登录到管理系统的用户名
oldPwd : 原来的密码
newPwd : 新密码
dt : 同上
返回值 :
0, 更改成功
1, 用户被禁止使用,所以不能更改
2, 用户使用期限已过,所以不能更改
3, 密码不正确,所以不能更改
4, 无此用户,所以不能更改
5, 新旧密码相同,所以不更改
6, 不明原因致使修改不成功}
function ShowChangUserPwdForm(userID,dt : PChar): integer;stdcall;
{用本DLL的登录对话框处理密码更改
参数为用户ID和日期
返回值:0 : 成功, 1 : 不成功
下面是用户改更密码对话框的图示:
}
function GetUserNameFromID(userID : PChar;
var userName : PChar): integer;stdcall;
{取得相应用户ID的用户名字
参数说明:
userID : 用户ID
userName: 返回检查到的用户名字的缓冲区
返回值:
0 : 没有取得这个ID的名字,
其它 : 返回userName的长度}
function UserQxCheck(UserID : PChar;
qxID : integer;
ErrStr : PChar;
sysErr : integer) : integer;
stdcall;
external 'qxDll.dll';
{检查某用户是否可使用某一功能的权限
参数说明:
userID : 要检查权限的用户ID
qxID : 要检查的权限ID, 注意, 是整数型值
ErrStr : 同上一函数
sysErr : 同上一函数
返回值 :
0, 有使用此功能的权限
1, 没有使用此功能的权限
}

开寅软件工作室 ©1999-2001

 

萧月禾

Unregistered / Unconfirmed
GUEST, unregistred user!
先试用一下,如果比我们写的那个好倒值得购买
话说:“RMB200元即可获得全部delphi6源代码!”
是否完全可以用在商业软件中?
 
K

kkyy

Unregistered / Unconfirmed
GUEST, unregistred user!
当然可用在商业软件当中。
但不可二手转卖源码和动态库。
 

萧月禾

Unregistered / Unconfirmed
GUEST, unregistred user!
刚下载了,好象不能运行呀,需要什么环境?
 
K

kkyy

Unregistered / Unconfirmed
GUEST, unregistred user!
EXE版只有的SQLSERVER2000数据库备份,如果没有SQLSERVER和本地客户端,那不行。
DLL版提供脚本可修改用于其它数据库。
 

萧月禾

Unregistered / Unconfirmed
GUEST, unregistred user!
出现的似乎是内存操作异常的错误,并非提示没有数据库
但你的demo里并没有提供相应的sql脚本和相关的测试数据呀?
 
K

kkyy

Unregistered / Unconfirmed
GUEST, unregistred user!
Qxglxt.dbk是数据库备份,先恢复,
启动程序后设置数据库链接,
DEMO中没有脚本。
 
K

kkyy

Unregistered / Unconfirmed
GUEST, unregistred user!
萧兄,有什么问题,QQ联系:89757036
 
K

kkyy

Unregistered / Unconfirmed
GUEST, unregistred user!
测试数据在数据库里有。
 
H

hillwood

Unregistered / Unconfirmed
GUEST, unregistred user!
R

roseinrain

Unregistered / Unconfirmed
GUEST, unregistred user!
看了一下你定义的函数,好象与你说的不太符合吧。过份夸大了他的功能。
你只实现了LOGIN及login 过程中的一些功能而已,没有到权限检查后的应有的权限及
根据权限判断界面的功能显示。
我想你现有的功能不足以出售
 
顶部