⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 scan.cpp

📁 A small scanning source code. Hope we can exchange exchanges. Exhibitions.
💻 CPP
字号:
#include "stdafx.h"
#include <stdio.h>
#include <string.h>
#include <winsock.h>
#pragma comment(lib,"ws2_32.lib")
//加载头文件和必须的库文件

int main(int argc, char* argv[])
{
	int socketid,pcount=0;
	struct sockaddr_in my_addr;
	WSADATA wsa;
	WORD SocketVer=MAKEWORD(1,1);
	if (SocketVer < 0)
		{
			printf("\n Socket Ver Error!");
			return -1;
		}
//初始化Socket和计数器,以及判断Socket版本
		if (argc <3)
			{
				printf("Usage:%s [Host] [MaxPort] \n",argv[0]);
				return -1;
			}
	if(WSAStartup(SocketVer,&wsa))
		{
			printf("Winsocket Initilalization Failed!\n");
			return -1;
		}
//判断参数和初始化Winsocket
	for (int i=1;i < atoi(argv[2]);i++)
		{
			if((socketid=socket(AF_INET,SOCK_STREAM,0))==INVALID_SOCKET)
				{
					printf("Create Socket error\n");
					return -1;
				}
			my_addr.sin_family=AF_INET;
			my_addr.sin_port=htons(i);
			my_addr.sin_addr.s_addr=inet_addr(argv[1]);
			if(connect(socketid,(struct sockaddr*)&my_addr,sizeof(struct sockaddr))==SOCKET_ERROR)
				closesocket(socketid);
			else
			{
				pcount++;
				printf("Find Port is %d\n",i);
			}
//设置端口和进行连接
		}
	printf("%d Ports Open on Host -%s\n",pcount,argv[1]);
	closesocket(socketid);
	WSACleanup();
	return 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -