Ola a todos não consigo fazer o código abaixo compilar (DevC++ 4.9.9.2), gostaria de uma ajuda para saber como concertar isso, ou se esta faltando (provavel) adicionar, alguma referência a alguma dll, não mensionada na linha de
comando, Enfim ... Ou tambem esboça um modelo de socket diferente deste abaixo mas que compile (servidor), seja como for obrigado:
// Esse é um modelo de servidor, adicionei apenas essas duas referências na linha de comando: -l wsock32 -l Ws2_32, mas continua não compilando Os erros estão no final
#include<sys/types.h>
#include<sys/socket.h>
#include<netinet/in.h>
#include<unistd.h>
#include<stdlib.h>
#include<stdio.h>
#include <stdio.h>
#include <string.h>
#include <windows.h>
#include <stdlib.h>
#include <winreg.h>
#include <winsock.h>
#include <Winuser.h>
#include <iostream>
#include <winsock2.h>
#include <Ws2tcpip.h>
#include <conio.h>
#define UNICODE
main()
{
int cont,create_socket,new_socket,addrlen;
int bufsize = 1024;
char *buffer = malloc(bufsize);
struct sockaddr_in address;
printf("\x1B[2J");
if ((create_socket = socket(AF_INET,SOCK_STREAM,0)) > 0)
printf("The socket was created\n");
address.sin_family = AF_INET;
address.sin_addr.s_addr = INADDR_ANY;
address.sin_port = htons(15000);
if (bind(create_socket,(struct sockaddr *)&address,sizeof(address)) == 0)
printf("Binding Socket\n");
listen(create_socket,3);
addrlen = sizeof(struct sockaddr_in);
new_socket = accept(create_socket,(struct sockaddr *)&address,&addrlen);
if (new_socket > 0){
printf("The Client %s is connected...\n",inet_ntoa(address.sin_addr));
for(cont=1;cont<5000;cont++)
printf("\x7");
}
do{
printf("Message to send: ");
gets(buffer);
send(new_socket,buffer,bufsize,0);
recv(new_socket,buffer,bufsize,0);
printf("Message recieved: %s\n",buffer);
}while(strcmp(buffer,"/q")); //user ‘q’ to quit
close(new_socket);
close(create_socket);
}
Erros:
server.cpp C:\Users\Raul\Desktop\C sys/socket.h: No such file or directory.
server.cpp C:\Users\Raul\Desktop\C netinet/in.h: No such file or directory.
server.cpp In function `int main()':
server.cpp invalid conversion from `void*' to `char*'