Ir ao conteúdo
  • Cadastre-se

Gabrieltorreiro

Membro Júnior
  • Posts

    11
  • Cadastrado em

  • Última visita

Reputação

0
  1. Eu ja tinha visto o firewall, ja habilitei dmz e outras coisas no roteador. Tambem ja desinstalei o anti-virus. Tenho medo de já ter tentado tudo. Eu ja configurei o roteador e o modem ADSL que tenho. Não vim no forum por preguiça, mas é a ultima forma de obter informação, ja li muito código de outras pessoas na net sobre sockets, tambem ja vi muito pdf.Mas ate agora nada. não sei se tem algo bloqueando e se tiver não sei o que é.
  2. Olá Pessoal! Usando socket eu criei dois programas o cliente e o servidor. O programa funciona normalmente na rede local ele funciona com os seguintes endereços: 127.0.0.1(localhost) e 192.168.0.7(Meu IP na rede local). Como eu faço para esse Socket funciona com meu IP da net ou com meu DNS dinâmico? Quem puder me dar uma ajuda, por favor, serei muito grato. Eu já tentei de tudo, aqui é minha ultima chance de obter respostas. S.O: Windows 8.1 IDE: CodeBlocks Códigos usados abaixo: //Cliente.c //Includes //***************************************************************************** #include <winsock2.h> #include <winsock.h> #include <windows.h> #include <stdio.h> //***************************************************************************** int main(){ SetConsoleTitleA("Cliente Socket"); //Declarando variaveis e estruturas //***************************************************************************** SOCKET sock; struct sockaddr_in saddr; int cnet; int erro; struct hostent *host; //***************************************************************************** //Iniciando a library //***************************************************************************** WSADATA wsa; printf("\nInitialising Winsock...\n"); if (WSAStartup(MAKEWORD(2,2),&wsa) != 0) { printf("Failed. Error Code : %d",WSAGetLastError()); return 1; } printf("Initialised.\n"); //***************************************************************************** //Criando o socket //***************************************************************************** //host = gethostbyname("134.20.209.66");//IP FALSO sock = socket(AF_INET, SOCK_STREAM, 0); if(sock == INVALID_SOCKET){ MessageBox(NULL, "Invalid socket", "Erro", MB_OK); return 1; } //***************************************************************************** //Dados da conexao; //***************************************************************************** saddr.sin_family = AF_INET; //saddr.sin_addr = *(struct in_addr*)host->h_addr_list[0]; saddr.sin_addr.s_addr = inet_addr("134.20.209.66");//IP FALSO saddr.sin_port = htons(120); printf("Nome: %s\n", host->h_name); //***************************************************************************** //Conectando ao servidor //***************************************************************************** cnet = WSAConnect(sock, (struct sockaddr*)&saddr, sizeof(saddr), NULL, NULL, NULL, NULL); if(cnet!=0){ printf("Erro ao conectar\n"); erro = WSAGetLastError(); printf("\nErro: %i\n", erro); } /* cnet = connect(sock, (struct sockaddr*)&saddr,sizeof(saddr)); if(cnet==SOCKET_ERROR){ MessageBox(NULL, "Erro connect", "Erro", MB_OK); erro = WSAGetLastError(); printf("\nErro: %i\n", erro); //return 1; } */ printf("Conectado ao servidor\n"); //***************************************************************************** //Mensagem para o servidor //***************************************************************************** printf("Recebendo...\n"); //***************************************************************************** //Menssagem caso tenha erro //***************************************************************************** erro = WSAGetLastError(); printf("\nErro: %i\n", erro); //***************************************************************************** //Fim do programa //***************************************************************************** while(1); closesocket(sock); } Servidor.c //Includes //***************************************************************************** #include <winsock2.h> #include <winsock.h> #include <windows.h> #include <stdio.h> //***************************************************************************** int main(){ system("title Servidor Socket"); //Declarando variaveis e estruturas //***************************************************************************** SOCKET sock; struct sockaddr_in saddr; int cnet, ind; //***************************************************************************** //Iniciando a library //***************************************************************************** WSADATA wsa; printf("\nInitialising Winsock...\n"); if (WSAStartup(MAKEWORD(2,2),&wsa) != 0) { printf("Failed. Error Code : %d",WSAGetLastError()); return 1; } printf("Initialised.\n"); //***************************************************************************** //Criando o socket //***************************************************************************** sock = socket(AF_INET, SOCK_STREAM, 0); if(sock == INVALID_SOCKET){ MessageBox(NULL, "Invalid socket", "Erro", MB_OK); return 1; } //***************************************************************************** //Dados da conexao; //***************************************************************************** saddr.sin_family = AF_INET; saddr.sin_addr.s_addr = INADDR_ANY; saddr.sin_port = htons(120); //***************************************************************************** //Bind //***************************************************************************** ind = bind(sock, (struct sockaddr*)&saddr, sizeof(saddr)); if(ind == INVALID_SOCKET){ MessageBox(NULL, "Erro bind", "Erro", MB_OK); return 1; } //***************************************************************************** //Esperando o cliente //***************************************************************************** printf("Aguardando Cliente...\n"); listen(sock, 5); //***************************************************************************** //Aceitar conexao //***************************************************************************** SOCKET cliente; cliente = accept(sock, 0, 0); printf("Client conectado\n"); //***************************************************************************** //Menssagens e Loop //***************************************************************************** printf("Enviando...\n"); //***************************************************************************** //Funcao caso tenha erro //***************************************************************************** int erro; erro = WSAGetLastError(); printf("\nErro: %i\n", erro); //***************************************************************************** //Fim do programa //***************************************************************************** closesocket(sock); }
  3. Pessoal. Eu pretendo investir na Linguagem C quer dizer me aprofundar na linguagem. Então quero saber onde vocês aprenderam C? em curso, na internet ou com outra pessoa. Me fale também onde da internet. Digo isso mais para o pessoal avançado.
  4. Agradeço a boa vontade, mas se não for pedir muito poderia me explicar um pouquinho
  5. Olá pessoal do forum. Gostaria de saber como funciona a função printf();? Eu sei usar, mas quero saber. Como ela faz para imprimir a informação na tela? Quero saber como ela funciona la na biblioteca <stdio.h>? Não sei se eu me expressei direito, mas espero que vocês tenham entendido.
  6. Olá pessoal! Eu já li e pratiquei todos os exercícios do livro(linguagem c de luís damas). Sei muita coisa, mas não sei o que fazer agora, só consigo fazer aqueles programinhas no cmd. Por favor me digam qual passo devo tomar agora? me deem dicas de sites avançados e livros ou videos no youtube. Obrigado.
  7. Isso ja aconteceu comigo, você tem que aperta muito a memória no encaixe para funcionar.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!