请问我怎么在程序中禁用网上邻居?(50分)

  • 主题发起人 主题发起人 lygzerg
  • 开始时间 开始时间
L

lygzerg

Unregistered / Unconfirmed
GUEST, unregistred user!
我想做个C/S考试系统,想在程序启动时禁用网上邻居,不知道怎么实现。多谢赐教。
 
http://www.51cto.com/html/2005/1212/14016.htm
 
怎么在delphi中实现啊
 
原来都是修改注册表
用DELPHI提供的TREGISTRY类来做,比较容易的呢
 
怎么做啊,有代码吗,谢谢。
 
procedure TForm1.Button1Click(Sender: TObject);
begin
MyReg:=TRegistry.Create;
Myreg.RootKey:=HKEY_USERS;
Myreg.OpenKey('.DEFAULT/Software/Microsoft/Windows/CurrentVersion/Policies/
Explorer',true);
Myreg.WriteDWORD('NoNetHood',0); //启用

{ Myreg.WriteDWORD('NoNetHood',1); //禁用}

Myreg.Free;
end;
要注意在USES里要加上Registry;
其实也没什么,主要还是读写注册表,上面的代码可以说是一个模式,当然了,这段代码我也没调试,所以要是觉得还合用的话的,给点分啊,赚点分不容易啊!呵呵
 
没用啊,我也试过,执行没问题,就是不用禁用网上邻居。
procedure TForm1.Button1Click(Sender: TObject);
var
myreg:TRegistry;
begin
MyReg:=TRegistry.Create;
Myreg.RootKey:=HKEY_USERS;
Myreg.OpenKey('.DEFAULT/Software/Microsoft/Windows/CurrentVersion/Policies/Explorer',true);
myreg.WriteInteger('NoNetHood',1);
Myreg.Free;
end;
我的系统是WIN2000
帮我调试一下啊,急用,分不是问题。
 
有可能需要重新启动计算机
 
晕,我的是在机房,有保护卡,主要是考试端进入就禁用网上邻居,考试端退出就恢复网上邻居,怎么实现啊,还有别的方法吗,重起计算机肯定行不通的了。
 
可有些通过注册表实现的目的是必须重新启动的,而有些则不需要
 
那我的这个问题,该用什么方法解决比较妥当呢
 
禁了网卡不就好了~~
 
不行啊,禁用网上邻居是为了不让学生互相复制文件。
但是系统是C/S结构的要通信,网卡不能禁用。
 
那为什么不直接把共享协议去了。不就好了?都省得编程了。。。。当然,也可以编程实现协议的安装与删除。
 
写注册表是要重新启动的,不过编程实现协议的安装与删除也许可以,但是我也不会啊,麻烦楼上的doll_paul给个代码示范一下或给点参考资料也行,谢谢了
 
先看看,能不能用SendMessage(FindWindow('Progman', 'Program Manager'), WM_COMMAND, 106597, 0); 来刷新注册表。如果可以,就不用我上面的复杂方法了。
 
好象不行哦
 
用去除共享协议的办法挺好
 
写注册表是要重新启动的
 
楼主,你确认上面刷新注册表的办法不成??刷新注册办有二种方法。建议你试试。不成的话,再搞共享服务。。。
 
后退
顶部