当前位置:编程学习 > Delphi >>

在delphi编程时,如何检测1个端口是否被占用,不准用控件能实现么?最好别用控件!

在delphi编程时,如何检测1个端口是否被占用,不准用控件能实现么?最好别用控件!
答案:
如何检测本机UDP服务端口是否被占用? 
program TestPort;

uses
WinSock,windows;

var
s : TSocket;
wsd : TWSAData;
SockAddrIn : TSockAddrIn;
begin
if (WSAStartup(MAKEWORD(2,2),wsd) = 0) then
begin
s := Socket(AF_INET,SOCK_DGRAM,0);
try
if (s <> SOCKET_ERROR) then
begin
SockAddrIn.sin_family := AF_INET;
SockAddrIn.sin_addr.S_addr := htonl(INADDR_ANY);
SockAddrIn.sin_port := htons(Short(2222));
if (Bind(s,SockAddrIn,SizeOf(SockAddrIn))<>0) then
if (GetLastError = WSAEADDRINUSE) then
MessageBox(0,'Port 2222 Be Uses','Sorry',MB_OK);
end;
finally
CloseSocket(s);
WSACleanup();
end;
end;

上一个:VB编程好还是DELPHI好呢
下一个:DELPHI如何编程实现替换CAD文档中的文字?

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,