让XP 3389支撑多人登陆的办法头条 - 千亿集团

让XP 3389支撑多人登陆的办法头条

2019-02-11 11:22:38 | 作者: 浩瀚 | 标签: 体系,注册表,文件 | 浏览: 6111

第一步:首要是在Windows XP上装置SP2正式版,依照惯例方法装置即可,这儿不再赘述。
  
第二步:预备一份版别较早的SP2终端服务器软件(听说从Build 2082开端该功用就被制止了,所以最好运用之前版别),中文SP2测试版较难找到,我用的是英文版Build 2055,运转之后没有发现任何问题。你能够从千亿集团下载Build 2055的终端服务器履行文件TermSrv.DLL。从这个链接下载来的是一个扩展名为.DL_的文件,你能够把它的扩展名改成ZIP文件,然后用WinRAR解开它。
  
  第三步:接下来,以安全形式发动Windows XP,假如有多个操作体系,能够发动另一个能拜访Windows XP体系分区的体系(除非装置了第三方工具软件,不然Windows 98不能拜访NTFS分区,因而Windows 98或许没用)。然后,把Windows XP里边SP2正式版的一切TermSrv.DLL备份一下,在一切TermSrv.DLL文件呈现的方位,用Build 2055版别的TermSrv.DLL掩盖。一般,TermSrv.DLL至少呈现在二个方位,分别是:\Windows\system32,\Windows\system32\dllcache。但凡本来有TermSrv.DLL的当地,就用Build 2055版别的TermSrv.DLL掩盖。
  
  第四步:以正常形式发动Windows XP,假如体系的文件维护功用提示说TermSrv.DLL文件已被修正,并问询是否要恢复,挑选否。
  
  第五步:最终还要修正一下注册表,增加终端服务器的多用户答应。鉴于修正注册表比较费事并且简单犯错,你能够用下面的批指令修正注册表:
  
  @echo off
  setlocal
  set regkey="HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server\Licensing Core"
  reg add %regkey% /v EnableConcurrentSessions /T REG_DWORD /D 1 /f
  endlocal
  
  将上述内容保存为一个批指令文件,如AA.BAT,双击履行一下就能够了。
  
  我不引荐这种做法 ,太烦锁了,并且还要让体系重起过。咱们能够写一个批处理文件使体系不必重起就完成XP多用户登陆,首要咱们先来了解一个对注册表操作的指令参数:
  
  REG ADD KeyName [/v ValueName | /ve] [/t Type] [/s Separator] [/d Data] [/f]
  
  KeyName [\\Machine\]FullKey
  Machine 长途机器名 - 疏忽默许到当时机器。长途机器上
  只要 HKLM 和 HKU。
  FullKey ROOTKEY\SubKey
  ROOTKEY [ HKLM | HKCU | HKCR | HKU | HKCC ]
  SubKey 所选 ROOTKEY 下注册表项的完好名。
  
  /v 所选项之下要增加的值名。
  
  /ve 为注册表项增加空白值名(默许)。
  
  /t RegKey 数据类型
  [ REG_SZ | REG_MULTI_SZ | REG_EXPAND_SZ |
  REG_DWORD | REG_BINARY | REG_NONE ]
  假如疏忽,则选用 REG_SZ。
  
  /s 指定一个在 REG_MULTI_SZ 数据字符串中用作分隔符的字符
  假如疏忽,则将 "\0" 用作分隔符。
  
  /d 要分配给增加的注册表 ValueName 的数据。
  
  /f 不必提示就强行掩盖现有注册表项。
  
  例如:
  
  REG ADD \\ABC\HKLM\Software\MyCo
  增加长途机器 ABC 上的一个注册表项 HKLM\Software\MyCo
  
  REG ADD HKLM\Software\MyCo /v Data /t REG_BINARY /d fe340ead
  增加一个值(称号: Data,类型: REG_BINARY,数据: fe340ead)
  
  REG ADD HKLM\Software\MyCo /v MRU /t REG_MULTI_SZ /d fax\0mail
  增加一个值(称号: MRU,类型: REG_MUTLI_SZ,数据: fax\0mail\0\0)
  
  REG ADD HKLM\Software\MyCo /v Path /t REG_EXPAND_SZ /d ^%systemroot^%
  增加一个值(称号: Path,类型: REG_EXPAND_SZ,数据: %systemroot%)
  留意: 在扩大字符串中运用刺进符号 ( ^ )
  
  为了让体系不重起,咱们能够用shutdown -a 这个指令。
  依据上面找来的材料,咱们能够编写一个批处理,完成XP体系多用户登陆而又不必重起体系。  

呵呵,这个也是几年前经常用的东西了,看曾经的博客找到的,觉得今后或许还有用,特别找出来改了改,又到XPSP3上测试了一下,能用,现在发上来。Slyar去掉了一些躲藏的功用,由于用不着了,哈哈~~本来说做成EXE的补丁,成果出去上了个厕所打消了这个想法。。。

需求的到下载基地下载slyar_3389.rar,解压后一个文件夹里边有2个文件:slyartermsrv.dll、slyar3389.bat。

恩,仍是CMD下吧,先用tasklist /svc指令得到TermService的PID,然后修改一下文件夹里的slyar3389.bat,把"pid"里的PID改成你得到的数字,保存退出。

行了,剩余的作业就是双击一下slyar3389.bat,完成了,mstsc衔接验证一下就OK。

是不是写得有点少?那多写点。。。

原理:其实很简单了,2082今后的termsrv.dll不支持多人终端,我用2055的termsrv.dll掩盖本来的termsrv.dll就能够了。

那个bat也没啥,贴出来看看。

仿制代码代码如下:
@net stop sharedaccess
@ntsd -c q -p "pid"
@reg add HKLM\SOFTWARE\Microsoft\Windows" "NT\CurrentVersion\Winlogon /v KeepRASConnections /t REG_SZ /d 1 /f
@reg add HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f
@reg add HKLM\SYSTEM\CurrentControlSet\control\terminal" "server\Licensing" "Core /v EnableConcurrentSessions /t REG_DWORD /d 00000001 /f
@reg add HKLM\SYSTEM\CurrentControlSet\Services\TermService\Parameters /v serviceDll /t REG_EXPAND_SZ /d %SystemRoot%\system32\slyartermsrv.dll /f
@copy slyartermsrv.dll c:\windows\system32\dllcache\slyartermsrv.dll
@attrib +h +s +r c:\windows\system32\dllcache\slyartermsrv.dll
@copy slyartermsrv.dll c:\windows\system32\slyartermsrv.dll
@attrib +h +s +r c:\windows\system32\slyartermsrv.dll
@shutdown -a
@net start termservice

略微解说几个指令好了。

net stop sharedaccess
禁用XP的防火墙。

shutdown -a
由于svchost被干掉,所以会导致重启,这个指令能够停止重启。

ntsd -c q -p "pid"
体系debug级的ntsd,用来干掉进程特别爽。

版权声明
本文来源于网络,版权归原作者所有,其内容与观点不代表千亿集团立场。转载文章仅为传播更有价值的信息,如采编人员采编有误或者版权原因,请与我们联系,我们核实后立即修改或删除。

猜您喜欢的文章