捐赠 | 广告 | 注册 | 发布 | 上传 | 关于我们    
  沪ICP备05001939号 DELPHI盒子 | 盒子论坛 | 盒子文章 | 盒子问答悬赏 | 最新更新 | 论坛检索 | 下载中心 | 高级搜索    
  精品专区 | 繁體中文 | 奖励公告栏 | 直通车账号登陆 | 关闭GOOGLE广告 | 临时留言    
盒子资源分类
全部展开 - 全部合拢
机房IP计算机自动修改
关键字:LoadIP FixNameIP 修改计算机名称 取MAC地址
来 自:原创
平 台:Win2k/XP/NT,Win2003 下载所需:0 火柴
深浅度:初级 完成时间:2006/11/12
发布者:wshwsh 发布时间:2007/2/3
编辑器:DELPHI7 语  种:简体中文
分 类:系统 下载浏览:3989/14649
加入到我的收藏
下载错误报错
登陆以后才能下载
 用户名:
 密 码:
自动登陆(30天有效)
图片如果打不开,说明流量不够了,请稍候下载……
在网络没有连接情况下取得网卡MAC地址,修改IP地址和计算机名称。
Google
 
本站原创作品,未经作者许可,严禁任何方式转载;转载作品,如果侵犯了您的权益,请联系我们
龙脉加密锁 15元起 Grid++Report 报表 申请支付@网
 相关文章
没有相关文章
相关评论
共有评论9条 当前显示最后6条评论
400109 2007/2/6 18:56:58
呵呵,即然如此,你加我QQ,我发你一份,我的QQ:46643663
wshwsh 2007/2/6 20:26:01
修改掩码,网关,和主.备DNS也很容易呀,查看NETSH参数,调用即可:)
edust 2007/2/7 13:28:43
能共享 就是可敬佩了!
400109 2007/2/9 14:08:11
因全部代码中,有涉及到敏感内容(网吧收费系统)只能在此处贴出设置注册表部分的代码给大家.希望能对各位有所帮助

//----------新系统设置----------
function SetReg(IP,AComputerName:String):String;
var
  Registry:TRegistry;
  i:integer;
  ServiceName,Key,C,Path,Gateway,Mask:String;
  BootIni:TiniFile;
  attr : DWORD;
  buf: array[0..11] of Byte;//=($39,$9c,$11,$d0,$00,$00,$7e,$00,$00,$00,$00,$00);
  buf1:array[0..3] of Byte;
begin
  IP := Trim(IP);
  AComputerName := Trim(AComputerName);
  buf[0]:= $39;
  buf[1]:= $9c;
  buf[2]:= $11;
  buf[3]:= $d0;
  buf[4]:= $00;
  buf[5]:= $00;
  buf[6]:= $7e;
  buf[7]:= $00;
  buf[8]:= $00;
  buf[9]:= $00;
  buf[10]:= $00;
  buf[11]:= $00;

  buf1[0]:= $00;
  buf1[1]:= $00;
  buf1[2]:= $00;
  buf1[3]:= $00;

  ServiceName := '';
  Registry:=TRegistry.Create;//创建TRegistry类的变量

  Registry.RootKey:=HKEY_LOCAL_MACHINE;//打开注册表中HKEY_CLASSES_ROOT根键
  //1.获取网卡GUI----------
  for i:=1 to 10 do
  begin
    Registry.CloseKey;
    if Registry.OpenKey('SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkCards\'+IntToStr(i),False) then
    begin
      ServiceName :=Registry.ReadString('ServiceName');
      break;
    end
  end;
  Registry.CloseKey;
  if ServiceName='' then exit;
  Key :=  'CurrentControlSet';
  IP := IP+#0#0;
  for i :=0 to 10 do
  begin
    //1.计算机网卡信息设置
    Gateway := '192.168.0.1';
    Mask := '255.255.255.0';
    Registry.RootKey:=HKEY_LOCAL_MACHINE;//打开注册表中HKEY_CLASSES_ROOT根键
    if Registry.OpenKey('SYSTEM\'+Key+'\Services\Tcpip\Parameters\Interfaces\'+ServiceName,False) then
    begin
       Registry.WriteInteger('EnableDHCP', 0);       //禁用DHCP
       RegSetValueEx(Registry.CurrentKey,PChar('DefaultGateway'), 0,REG_MULTI_SZ, @Gateway[1], Length(Gateway));  //添加网关
       RegSetValueEx(Registry.CurrentKey,PChar('SubnetMask'), 0,REG_MULTI_SZ, @Mask[1], Length(Mask));          //添加隐码
       RegSetValueEx(Registry.CurrentKey,PChar('IPAddress'), 0,REG_MULTI_SZ, @IP[1], Length(IP));          //设置IP地址
    end;
    Registry.CloseKey;
    
    //2.设置计算机名----------
    if Registry.OpenKey('SYSTEM\'+Key+'\Services\Tcpip\Parameters',False) then
    begin
       Registry.WriteString('NV Hostname',AComputerName);  //设置计算机名
       Registry.WriteString('Hostname',AComputerName);     //设置主机名
    end;
    Registry.CloseKey;

    if Registry.OpenKey('SYSTEM\'+key+'\Control\ComputerName\ComputerName',False) then
       Registry.WriteString('ComputerName',AComputerName);
    Registry.CloseKey;
    if Registry.OpenKey('SYSTEM\'+key+'\Control\ComputerName\ActiveComputerName',False) then
       Registry.WriteString('ComputerName',AComputerName);
    Registry.CloseKey;
    Key := 'ControlSet'+copy(IntToStr(1001+i+1),2,3);
  end;

  //隐藏桌面上的网上邻居
  Registry.CloseKey;
  if Registry.OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel',True) then
  Registry.WriteInteger('{208D2C60-3AEA-1069-A2D7-08002B30309D}',1);
  Registry.CloseKey;


  //----------隐藏H,L盘 ----------
  Registry.RootKey:=HKEY_CURRENT_USER;//打开注册表中根键
  if Registry.OpenKey('Software\Microsoft\Windows\CurrentVersion\Policies\Explorer',True) then
  Registry.WriteInteger('NoviewOnDrive',$80);
  Registry.WriteInteger('NoDrives',$880);

  //----------隐藏XP系统中的设置----------
  //隐藏桌面上的"网上邻居" 图标
  Registry.WriteInteger('NoNetHood',1);
  Registry.WriteInteger('DisallowCpl',1);
  //隐藏指定的控制面板项目
  Registry.WriteInteger('ForceClassicControlPanel',1);
  //强制为传统控制面板样式
  Registry.WriteInteger('NoNetworkConnections',1);
  //隐藏开始的设置中网络和拨号连接
  Registry.WriteInteger('ClearRecentDocsOnExit',1);
  //退出系统自动清除历史记录,包括文档、运行和查找
  Registry.WriteInteger('Intellimenus',1);
  //禁止个性化菜单
  Registry.WriteInteger('NoComputersNearMe',1);
  //隐藏网上邻居中我附近的计算机
  Registry.WriteInteger('NoDriveTypeAutoRun',$000000ff);
  //取消自动运行
  Registry.WriteInteger('NoInstrumentation',1);
  //关闭用户跟踪
  Registry.WriteInteger('NoManageMyComputerVerb',1);
  //隐藏"我的电脑"右键菜单的"管理
  Registry.WriteInteger('NoNetConnectDisconnect',1);
  //禁止使用资源管理器或网上邻居映射或断开网络驱动器
  Registry.WriteInteger('NoPropertiesMyDocuments',1);
  //删除我的文档右键菜单的属性
  Registry.WriteInteger('NoSaveSettings',1);
  //退出时不保存某些设置
  Registry.WriteInteger('StartMenuLogOff',1);
  //取消〖注销〗项(不影响安全模式)
  Registry.WriteInteger('NoLogoff',0);
  //注销
  Registry.WriteInteger('NoRun',0);
  //运行
  Registry.WriteInteger('NoClose',0);
  //禁用关闭系统/关闭计算机

  //删除桌面上的网上邻居
  Registry.CloseKey;
  if Registry.OpenKey('Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel',True) then
  Registry.WriteInteger('{208D2C60-3AEA-1069-A2D7-08002B30309D}',1);

  //隐藏显示属性中的页面[桌面]
  Registry.CloseKey;
  if Registry.OpenKey('Software\Microsoft\Windows\CurrentVersion\Policies\System',True) then
  Registry.WriteInteger('NoDispBackgroundPage',1);
  Registry.CloseKey;

  //真正隐藏文件和文件夹
  Registry.RootKey:=HKEY_LOCAL_MACHINE;//打开注册表中根键
  if Registry.OpenKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Advanced\Folder\Hidden\SHOWALL',True) then
  Registry.WriteInteger('CheckedValue',2);
  Registry.WriteString('Type','radio');
  Registry.CloseKey;

{  //消除快捷方式字样
  Registry.RootKey:=HKEY_USERS;//打开注册表中根键
  if Registry.OpenKey('.DEFAULT\Software\Microsoft\Windows\CurrentVersion\Explorer',true) then
  Registry.WriteBinaryData('Link',buf1,4);
  Registry.CloseKey;  }

  if Registry.OpenKey('SYSTEM\MountedDevices',False) then
  if Registry.ValueExists('\DosDevices\F:') then
  begin
    if Registry.ValueExists('\DosDevices\H:') then Registry.DeleteValue('\DosDevices\H:');
    if Registry.ValueExists('\DosDevices\L:') then Registry.DeleteValue('\DosDevices\L:');
    Registry.RenameValue('\DosDevices\E:','\DosDevices\H:');
    Registry.RenameValue('\DosDevices\F:','\DosDevices\L:');
  end;
  //添加网众E盘
  Registry.WriteBinaryData('\??\Volume{124d9bea-76ea-11db-a206-000b2f076879}',buf,12);
  Registry.WriteBinaryData('\DosDevices\E:',buf,12);
  Registry.CloseKey;
  Registry.Free;     

  //设置启动菜单的等待时间为0秒
  FileSetAttr('c:\boot.ini', 0);
  BootIni := TIniFile.Create('c:\boot.ini');
  BootIni.WriteInteger('boot loader','timeout',0);
  BootIni.Free;
  attr := attr or (faArchive);
  attr := attr or ($00000001);
  attr := attr or (faHidden);
  attr := attr or (faSysFile);
  FileSetAttr('c:\boot.ini', attr);
    
end;
wshwsh 2007/2/13 6:17:33
 //1.获取网卡GUI----------
  for i:=1 to 10 do
  begin
    Registry.CloseKey;
    if Registry.OpenKey('SOFTWARE\Microsoft\Windows NT\CurrentVersion\NetworkCards\'+IntToStr(i),False) then
    begin
      ServiceName :=Registry.ReadString('ServiceName');
      break;
    end
  end;
  Registry.CloseKey;
如果网卡驱动过多次,注册表中残留上个网卡信息,可能有问题。
是否把BREAK;这句删除。
400109 2007/2/14 2:00:46
如果有多个网卡,可以考虑使用数组来记录下每块网卡对应的GUI
我要发表评论 查看全部评论
 
  DELPHI盒子版权所有 1999-2023 V4.01 粤ICP备10103342号-1 更新RSS列表