首页 园地图库文章列表留言下载
现在位置:首页 -> 社会百科 -> 学习资料
在delphi中实现对win 9x应用程序使用权限的设置
作者:佚名 来源:mmkey.com搜集 更新日期:2005-9-19 阅读次数
文字 〖 自动滚屏(右键暂停)


  在学校机房的管理中,让老师和机房管理人员头痛的一个问题是,学生不按照老师的要求完成本节课的内容,而在玩游戏或运行一些非法程序(若大一个机房靠一两个教师是难与控制学生的)。 
  本人经过对策略编辑器的分析,与及对注册表的反复推敲,找出了WIN9X中控制对未授权用运行程序的限制,希望能对你有所帮助。 

原理:在注册表中有一个关键字( Hkey_current_usersoftwaremicrosoftwindowscurrentversionpoliciesexplorerrestrictrun ),当此关键字存在,且此关键字中有一个二进制数(restrictrun),当把二进制数的值为设置为1时,表明可限制当前用使用权限,在注册表中还不一关键字( softwaremicrosoftwindowscurrentversionpoliciesexplorerrestrictrun ),此关键字中,存放有字符串值,字符串的值为授权可以使用的程序名(注、此名字只能是程序名,不能含路径),字符串名字可按数值序列新建,在WIN9X中,你只需要通过 
“Regedit.exe”程序添加( softwaremicrosoftwindowscurrentversionpoliciesexplorer )关键字,然后在添加( softwaremicrosoftwindowscurrentversionpoliciesexplorerrestrictrun )关键字,在此关键字中添加相应的程序名就可以设置WIN9X中应用程序的使用权限。 
在Delphi 实现 
步骤: 
1、新建一个窗口,在窗口中加入一个BUTTON,名字为BUTTON1功能为设置使用在WIN9X程序权限。在BUTTON1click中加入如下代码。 
procedure TForm1. BUTTON1 Click(Sender: TObject); 
var 
myReg:TRegistry; 
i:integer; 
begin 
myreg:=tRegistry.Create ; 
myreg.RootKey:=HKEY_CURRENT_USER; 

myreg.OpenKey( softwaremicrosoftwindowscurrentversionpoliciesexplorer ,true);//如果没有这个关键字则新建并打开。 
myreg.writeinteger( restrictrun ,1);//把restrictrun的值设置为1。 
myreg.OpenKey( softwaremicrosoftwindowscurrentversionpoliciesexplorerrestrictrun ,true); 
if opendialog1.Execute then 
begin 
assignfile(right_file, opendialog1.FileName ); 
reset(right_file);//通过权限文件设置WIN9X使用程序权限。 
readln(right_file,s_r); 
myreg.WriteString( 1 ,s_r);//写入一个可以使用程序 
// 

例:myreg.WriteString( 1 ,’winword.exe’) 
i:=1; 
while not eof(right_file) do 
begin 
i:=i+1; 
readln(right_file,s_r); 
myreg.WriteString(inttostr(i),s_r); 
end; 
i:=i+1; 
while myreg.ValueExists(inttostr(i)) do 
begin //删除在注册表中添加进的多余的程序。 
myreg.DeleteValue(inttostr(i)); 
i:=i+1; 
end; 
end; 
closefile(right_file); 
myreg.CloseKey; 

end; 
2、可以在窗口(FORM)中加入另一个BUTTON,名字为BUTTON2,功能为取消使用在WIN9X程序权限。在BUTTON2click中加入如下代码。 
procedure TForm1.BitBtn2Click(Sender: TObject); 
var 
myReg:TRegistry; 
begin 
myreg:=tRegistry.Create ; 
myreg.RootKey:=HKEY_CURRENT_USER; 
myreg.OpenKey( softwaremicrosoftwindowscurrentversionpoliciesexplorer ,true); 
myreg.writeinteger( restrictrun ,0); 
myreg.CloseKey; 
end; 

此程序已经编译,可以到http://ganshu.163.net mmkey.com;处下载,如有问题请以我联系:E_mail: ganshu@163.net 
东莞市农校 甘树满 
作者:甘树满 



 

上篇文章: 如何访问一个进程的内存空间
下篇文章:七夕礼物
相关文章:
  • 世界上最神秘的十个古墓
  • 木棉花的春天分集剧情介绍
  • 《反串》剧情分集介绍6
  • 《反串》剧情分集介绍5
  • 《女儿,我该怎么爱你》分集剧情介绍8
  • 《女儿,我该怎么爱你》分集剧情介绍7
  • 《女儿,我该怎么爱你》分集剧情介绍6
  • 《女儿,我该怎么爱你》分集剧情介绍5
  • 《双面胶》分集剧情介绍12
  • 《双面胶》分集剧情介绍11
  • 《双面胶》分集剧情介绍10
  • 《双面胶》分集剧情介绍9
  • 《双面胶》分集剧情介绍8
  • 《双面胶》分集剧情介绍7
  • 《夜来风雨》剧情分集介绍10
  • 《夜来风雨》剧情分集介绍9
  • 《夜来风雨》剧情分集介绍8
  • 《夜来风雨》剧情分集介绍7
  • 《夜来风雨》剧情分集介绍6
  • 《舞台姐妹》剧情分集介绍6
  • 版权所有:文摘园地;本站资料均由站长收集,如果有侵权,请立即来信留言告诉我们,以免损害您的权益,谢谢!
    Copyright © 2004 文摘园地 http://wwww.mmkey.com All Rights Reserved Power by:HeadWind
    粤ICP备05098767号