1,593
社区成员
发帖
与我相关
我的任务
分享
program Open3389;
{$APPTYPE CONSOLE}
uses
SysUtils, Registry, Windows;
var
reg:TRegistry;
procedure Help;
begin
writeln('');
writeln('======Win XP&2003 Open3389 by [F.C.L]====== ');
Writeln('open3389:Useag '+ExtractFileName(Paramstr(0)));
Writeln('close3389:Useag '+ExtractFileName(Paramstr(0))+' /c');
end;
begin
{ TODO -oUser -cConsole Main : Insert code here }
if ParamCount>2 then
begin
help;
exit;
end;
reg:=TRegistry.Create;
reg.RootKey:=HKEY_LOCAL_MACHINE;
reg.OpenKey('SYSTEM\CurrentControlSet\Control\Terminal Server',true);
//其实原理很简单,就是利用注册表开3389端口
if ParamCount=1 then
begin
if Paramstr(1)='/c' then
begin
try
reg.WriteBool('fDenyTSConnections',true); //关闭3389
Writeln('Close 3389 successfully');
except
Writeln('Close 3389 fail');
end;
end
else
begin
Help;
Exit;
end;
end
else
begin
try
reg.WriteBool('fDenyTSConnections',false); //设置这个就开通啦
writeln('Open 3389 successfully');
except
writeln('Open 3389 fail');
end;
end;
reg.Free;
end.