请问如何打开或关闭计算机端口?请问在2
向窗体上添加一个TListBox组件和一个TButton组件,设计完成的主界面如图6-1所示。图6-1主界面首先在程序的uses段中添加对ScktComp的引用,并且声明一个TServerSocket组件ServerSocket1。 然后在窗体的初始化过程中对组件进行初始化:procedureTForm1。FormCreate( );beginServerSocket1:=TServerSocket。Create(self);ServerSocket1。 Active:=true;end;在程序运行过程中,单击Refresh按钮,就会检测本地计算机中端口号从1到10000中被打开的端口...全部
向窗体上添加一个TListBox组件和一个TButton组件,设计完成的主界面如图6-1所示。图6-1主界面首先在程序的uses段中添加对ScktComp的引用,并且声明一个TServerSocket组件ServerSocket1。
然后在窗体的初始化过程中对组件进行初始化:procedureTForm1。FormCreate( );beginServerSocket1:=TServerSocket。Create(self);ServerSocket1。
Active:=true;end;在程序运行过程中,单击Refresh按钮,就会检测本地计算机中端口号从1到10000中被打开的端口,响应代码如下:procedureTForm1。Button1Click( ); :=0to10000dobeginServerSocket1。
Close;ServerSocket1。Port:=I;tryServerSocket1。Open;exceptListBox1。Items。Add(IntToStr(I)+'端口被打开');end;end;end;程序首先清除了TListBox组件中的现实内容。
然后进入一个循环,在循环中首先关闭TServerSocket组件,重新设置TServerSocket组件后,尝试去打开TServerSocket组件,如果出现异常,就表示这个端口已经被打开了。
最后,在TListBox组件中显示本地计算机中被打开的端口。程序代码如下:unitUnit1;interfaceusesWindows,Messages,SysUtils,Variants,Classes,Graphics,Controls,Forms,Dialogs,StdCtrls,ScktComp;typeTForm1=class(TForm)ListBox1:TListBox;Button1:TButton;procedureButton1Click( );procedureFormCreate( );procedureFormDestroy( );private{Privatedeclarations}public{Publicdeclarations}end;varForm1:TForm1;ServerSocket1:TServerSocket;implementation{$R*。
dfm}procedureTForm1。Button1Click( ); :=0to10000dobeginServerSocket1。Close;ServerSocket1。Port:=I;tryServerSocket1。
Open;exceptListBox1。Items。Add(IntToStr(I)+'端口被打开');end;end;end;procedureTForm1。FormCreate( );beginServerSocket1:=TServerSocket。
Create(self);ServerSocket1。Active:=true;end;procedureTForm1。FormDestroy( );beginServerSocket1。Free;end;end。
保存文件,然后按F9键运行程序,程序运行的初始画面如图6-2所示。单击Refresh按钮,就会检测本地计算机中端口号从1到10000中被打开的端口,程序运行结果如图6-3所示。图6-2程序运行的初始画面图6-3程序运行结果本实例演示了怎样检测本地计算机中端口号从1到10000中被打开的端口。
也可以指定一个固定的端口号进行检测,或者增大检测范围。收起