
04.11.2008, 12:59
|
|
Участник форума
Регистрация: 20.11.2006
Сообщений: 172
Провел на форуме: 539954
Репутация:
106
|
|
Нашел вот это:
Код:
/*--------------------
| if your using dev-c++
| you need to link
| -lws2_32
| to your application
---------------------*/
#include <winsock2.h>
#include <iostream>
using namespace std;
char IP[20];
int start, end, temp, err, nret;
SOCKET sock;
SOCKADDR_IN Info;
WSADATA wsadata;
int main()
{
err = WSAStartup(MAKEWORD(2, 2), &wsadata);
if(err != 0)
{
cout << "Error with winsock. Will Now Exit." << endl;
cin.get();
return 0;
}
cout << "Target IP: ";
cin>>IP;
cout << "Starting Port: ";
cin>>start;
cout << "End Port: ";
cin>>end;
cin.ignore();
cout << endl << endl << "Starting Scan..." << endl << endl;
temp = start;
while(temp < end)
{
sock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
Info.sin_family = AF_INET;
Info.sin_port = htons(start);
nret = connect(sock, NULL, NULL);
if(nret != SOCKET_ERROR)
{
cout << "Port " << temp << " - OPEN! " << endl;
}
temp++;
closesocket(sock);
}
cout << endl << "Finished With Scan..." << endl;
cin.get();
return 0;
}
но не проверял. На всякий случай еще исходники есть здесь:
1) _http://www.d3scene.com/forum/general-programming/7573-c-port-scanner.html
2) _http://www.daniweb.com/forums/thread103846.html
3) _http://www.ricksoft.co.uk/downloads/portscan/portscan.htm (вроде даже кроссплатформенный)
|
|
|