Toda la razon no me habia dado cuenta, no lo puedo probar aun pero creo que me servira.
gracias eferion
gracias eferion
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes Menú#ifndef _WINDOWS_
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#undef WIN32_LEAN_AND_MEAN
#endif
#pragma comment( lib, "ws2_32.lib" )
#include <WinSock2.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <Ws2tcpip.h>
char comodin[512];
char SendBuff[512];
char RecvBuff[512];
char s2[512]= " ";
char tiempoCaracteres[]={"0123456789abcdefghijklmnopqrstuvwxyz,.;:+-*/!%&/()=?¿¡-}<>[]\n"};
int main(int argc, char *argv[]){
WSADATA wsaData;
SOCKET conn_socket;
struct sockaddr_in server;
struct hostent *hp;
int resp,numero,p;
char comodin,comodin2;
int ClaseComando=0;
char c;
char comodin,comodin2;
do{
//Inicializamos la DLL de sockets
resp=WSAStartup(MAKEWORD(1,0),&wsaData);
if(resp){
printf("Error al inicializar socket\n");
getchar();return -1;
}
//Obtenemos la IP del servidor... en este caso
// localhost indica nuestra propia máquina...
hp=(struct hostent *)gethostbyname("192.168.0.5");
if(!hp){
printf("No se ha encontrado servidor...\n");
getchar();WSACleanup();return WSAGetLastError();
}
// Creamos el socket...
conn_socket=socket(AF_INET,SOCK_STREAM, 0);
if(conn_socket==INVALID_SOCKET) {
printf("Error al crear socket\n");
getchar();WSACleanup();return WSAGetLastError();
}
memset(&server, 0, sizeof(server)) ;
memcpy(&server.sin_addr, hp->h_addr, hp->h_length);
server.sin_family = hp->h_addrtype;
server.sin_port = htons(60);
// Nos conectamos con el servidor...
if(connect(conn_socket,(struct sockaddr *)&server,sizeof(server))==SOCKET_ERROR){
printf("Fallo al conectarse con el servidor\n");
closesocket(conn_socket);
WSACleanup();getchar();return WSAGetLastError();
}
printf("Conexion establecida con: %s\n", inet_ntoa(server.sin_addr));
//do{
printf("Escribe lo que deseas enviar(acabado en '.'):");
fflush (stdin);
gets(SendBuff);
//Enviamos y recibimos datos...
printf("Datos enviados: %s \n", SendBuff);
send(conn_socket,SendBuff,sizeof(SendBuff),0);
//printf("Recibiendo Mensaje... \n");
fflush (stdin);
strcpy( RecvBuff, s2 );
recv(conn_socket,RecvBuff, sizeof(RecvBuff), 0);
printf("Datos recibidos: %s \n", RecvBuff);
for(p=0 ; p<61 ; p++)
{
comodin=tiempoCaracteres[p];
if(strcmp(RecvBuff,comodin)==0)
{
numero = p;
printf("el numero del caracter es: %d", numero);
}
}
fflush (stdin);
printf( "primero pulsa s para seguir enviando, despues escribe el comando deseado." );
}while ( ( c = getchar() ) == 's');
// Cerramos el socket y liberamos la DLL de sockets
closesocket(conn_socket);
WSACleanup();
return EXIT_SUCCESS;
}