日本国产亚洲-日本国产一区-日本国产一区二区三区-日本韩国欧美一区-日本韩国欧美在线-日本韩国欧美在线观看

當(dāng)前位置:雨林木風(fēng)下載站 > 技術(shù)開發(fā)教程 > 詳細(xì)頁面

運(yùn)用winsock Api完成finger

運(yùn)用winsock Api完成finger

更新時(shí)間:2022-05-10 文章作者:未知 信息來源:網(wǎng)絡(luò) 閱讀次數(shù):

在編制Winsocket程序的時(shí)候,要有一些必要的步驟:
1、初始化Winsock動(dòng)態(tài)連接庫;

2、建立一個(gè)Winsock對(duì)象。

3、連接主機(jī)。

4、和主機(jī)進(jìn)行數(shù)據(jù)交流。

5、關(guān)閉Socket對(duì)象

6、釋放Winsoket動(dòng)態(tài)鏈接庫。

下面是一個(gè)使用winsock Api實(shí)現(xiàn)finger實(shí)現(xiàn)的源程序:在delphi6中調(diào)試通過。

unit finger;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,winsock, StdCtrls;

type
TForm1 = class(TForm)
Label1: TLabel;
Label2: TLabel;
edtHost: TEdit;
btnFinger: TButton;
edtUser: TEdit;
memInfo: TMemo;
procedure btnFingerClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.btnFingerClick(Sender: TObject);
var
Info:string;//服務(wù)器返回的用戶信息
BufSend,BufRev:pChar;//中間信息
skt:TSOCKET;//創(chuàng)建Socket對(duì)象
addr:TSockAddr;//地址信息
Re:Integer;
begin
//1、建立Socket
skt:=socket(AF_INET,SOCK_STREAM,0);
if(skt=INVALID_SOCKET)Then
begin
memInfo.Lines.Add('Error:Create Winsock Failed');
exit;
end;
//2、連接主機(jī)
ZeroMemory(@addr,sizeof(addr));
Addr.sin_family:=AF_INET;
Addr.sin_addr.S_addr:=inet_addr(Pchar(edtHost.Text));
//開放79端口
addr.sin_port:=htons(79);
Re:=connect(skt,addr,sizeof(addr));
if(Re<>0)then
begin
memInfo.Lines.Add('Connect to Server Failed!');
exit;
end;

//3、發(fā)送信息
GETMem(BufSend,1024);
ZeroMemory(BufSend,1024);
Info:=edtUser.Text+#10;
StrPCopy(BufSend,info);
Re:=Send(skt,Bufsend^,Length(BufSend),0);
if(Re=SOCKET_ERROR)then
begin
memInfo.Lines.Add('Send Data Failed!');
exit;
end;
//5、讀取主機(jī)返回信息
GetMem(BufRev,1024);
Repeat
ZeroMemory(BufRev,1024);
re:=recv(skt,BufRev^,1024,0);
Info:=Strpas(bufRev);
memInfo.Lines.Add(Info);
Until re=0;
memInfo.Lines.Add('FINISH!');
FreeMem(BufSend);
FreeMem(BufRev);
//6、關(guān)閉socket連接
closesocket(skt);
end;

procedure TForm1.FormCreate(Sender: TObject);
var
WSAData:TWSAData; //是TWSAData類型的變量,系統(tǒng)把加載的版本信息添加到這個(gè)結(jié)構(gòu)中
begin
//初始化Winsock
if(WSAStartup(MAKEWORD(2,0),WSAData)<>0)then
begin
//初始化失敗
memInfo.Lines.Add('Winsock Init Failed!');
exit;
end
else
memInfo.Lines.Add('Winsock Start!');
end;

procedure TForm1.FormDestroy(Sender: TObject);
begin
WSACleanUP();
end;

end.
如果有什么問題,請(qǐng)聯(lián)系 qiujianben@163.com (杭州電子工業(yè)學(xué)院)

溫馨提示:喜歡本站的話,請(qǐng)收藏一下本站!

本類教程下載

系統(tǒng)下載排行

主站蜘蛛池模板: 国产欧美日韩在线 | 亚洲精品一区二区四季 | 日本激情视频一区二区三区 | 中文字幕色在线 | 日本在线观看 | 日韩欧美精品中文字幕 | 国产精品99久久久久久董美香 | 91视频青青草 | 国产视频精品久久 | 亚洲国产成人综合 | 91精品免费国产高清在线 | 97人人射 | 91亚洲va在线天线va天堂va国产 | 91福利一区二区在线观看 | 永久在线观看视频 | 天天干天天干天天色 | 久久综合色鬼 | 国产精品一区在线播放 | 一七六九1769视频免费观看 | 久久中文字幕综合不卡一二区 | 日韩视频欧美视频 | 日韩欧美色视频在线观看 | 猫咪www免费人成网站在线观看 | 亚洲精品啪啪一区二区三区 | 国内精品久久久久久中文字幕 | 国产麻豆91欧美一区二区 | 久久精品日本免费线 | 一区二区视频在线观看免费的 | 久久999精品 | 国产综合另类小说色区色噜噜 | www日韩中文字幕在线看 | 成人羞羞视频在线看网址 | 日本视频播放 | 国产大片线上免费观看 | 久久久久免费 | 亚洲第一欧美 | 中文字幕制服诱惑 | tube欧美巨大 | 欧美透逼视频 | 亚洲mv国产精品mv日本mv | 国产在线观看福利一区二区 |