只要你有一台电脑或者手机,都能关注图老师为大家精心推荐的用VB实现Win2000用户限时登录,手机电脑控们准备好了吗?一起看过来吧!
【 tulaoshi.com - 编程语言 】
刚开始的时候,我把系统改成可管理性较强的Windows2000(文件系统必须采用NTFS格式),建立两个同属User组的受限制帐户Game(用于游戏)和Study(学习帐户)并为他们设置相应文件、文件夹的安全权限,然后利用系统管理工具中“本地安全策略”(开启“当登录时间用完时自动注销用户”)结合netuser命令来限制特定游戏帐号(如Game)的登录时间,不过并不奏效:能控制登录,但登录以后却不能实现自动强制退出。既然系统提供的功能不足以完成任务,何不通过编程来实现呢?初步的设想是用VB定制登录时间控制程序,然后修改注册表项,让程序在计算机启动或用户登录时自动加载。需要指出的是,必须限制Game和Study用户对系统时间的修改,为此还要对SetupBIOS加口令保护,有条件的话最好锁上主机箱。
首先,VB程序的设计:新建工程,调整窗口的大小到合适,在窗口中添加一个label控件(设置caption属性为“你的登录时间已用完,1分钟以后注销,请及时保存数据!”)和二个timer控件(mainTimer和fairyTimer),程序代码如下:
OptionExplicit
ConstEWX_LogoFF=0
ConstEWX_SHUTDOWN=1
ConstEWX_REBOOT=2
ConstEWX_FORCE=4
PrivateDeclareFunctionGetUserNameLib"advapi32.dll"Alias"GetUserNameA"(ByVallpBufferAsString,nSizeAsLong)AsLong
PrivateDeclareFunctionExitWindowsExLib"user32"(ByValuFlagsAsLong,ByValdwReservedAsLong)AsLong
PrivateSubfairyTimer_Timer()
Dimmyweekday,mydate
Dimmytime,hh$,mm$,ss$
(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)mydate=Date
myweekday=Weekday(mydate)
mytime=Time
hh$=Left$(mytime,2)
mm$=Mid$(mytime,4,2)
Ifmyweekday>1Andmyweekday<7Then
'周一至周五登录规则
Ifhh>18Andhh<19Then
ExitSub
Else
EndIf
Else
'双休日登录规则
Ifhh>13Andhh<15Then
ExitSub
ElseIfhh>18Andhh<20Then
ExitSub
Else
EndIf
EndIf
mainForm.Visible=True
mainTimer.Interval=60000'启动注销进程
EndSub
PrivateSubForm_Load()
(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/bianchengyuyan/)Dims$,cnt&,dl&
cnt&=199
s$=String$(200,0)
dl&=GetUserName(s$,cnt)
'Debug.PrintLeft$(s$,cnt-1);cnt
IfLeft$(s$,cnt-1)="ChenHL"Then
fairyTimer.Interval=6000'启动监听精灵
Else
mainTimer.Interval=0
EndIf
EndSub
PrivateSubForm_Unload(CancelAsInteger)
Dimret&
ret&=ExitWindowsEx(EWX_FORCEOrEWX_LogoFF,0)
EndSub
PrivateSubmainTimer_Timer()
Dimret&
ret&=ExitWindowsEx(EWX_FORCEOrEWX_LogoFF,0)
EndSub
来源:http://www.tulaoshi.com/n/20160219/1604710.html
看过《用VB实现Win2000用户限时登录》的人还看了以下文章 更多>>