Índice:

Como fazer um programa de bate-papo simples no Visual Basic usando o controle Winsock da Microsoft: 7 etapas
Como fazer um programa de bate-papo simples no Visual Basic usando o controle Winsock da Microsoft: 7 etapas

Vídeo: Como fazer um programa de bate-papo simples no Visual Basic usando o controle Winsock da Microsoft: 7 etapas

Vídeo: Como fazer um programa de bate-papo simples no Visual Basic usando o controle Winsock da Microsoft: 7 etapas
Vídeo: C# Tutorial - TCP/IP Client Server | FoxLearn 2024, Novembro
Anonim
Como fazer um programa de bate-papo simples no Visual Basic usando o controle Winsock da Microsoft
Como fazer um programa de bate-papo simples no Visual Basic usando o controle Winsock da Microsoft

Neste instutável mostrarei como fazer um programa de chat simples no Visual Basic. Vou repassar o que todo o código faz para que você aprenda à medida que o fizer e, no final, mostrarei como usá-lo.

Etapa 1: Visão geral

Novo Projeto "," superior ": 0,44341801385681295," esquerda ": 0,2802690582959641," altura ": 0,2632794457274827," largura ": 0,5067264573991032}, {" noteID ":" NJL01ANFG0GJ54J "," autor ":" twenglish "1: "isto é o que você deseja selecionar e clique em abrir", "superior": 0,25635103926096997, "esquerda": 0,017937219730941704, "altura": 0,22401847575057737, "largura": 0,23542600896860988}] ">

Visão geral
Visão geral

Este programa permitirá que você troque mensagens entre duas pessoas na mesma rede. Pode funcionar se você não estiver na mesma rede, mas não posso testá-lo agora.

Você deve ter o Microsoft Visual Basic 6.0, que é o que estou usando. Recomenda-se conhecimento básico de programação. Vamos começar !!! abra o Visual Basic e crie um EXE padrão

Etapa 2: Criando a Infração do Usuário

Criando a Infração do Usuário
Criando a Infração do Usuário
Criando a Infração do Usuário
Criando a Infração do Usuário

Agora é hora de criar o formulário do usuário

você precisará adicionar o controle winsock à caixa de ferramentas para fazer isso: 1. clique com o botão direito em algum lugar na caixa de ferramentas onde não haja nada 2. clique em Componentes 3. na longa lista encontre Microsoft Winsock Control 6.0 e marque a caixa ao lado dele 4. em seguida, clique em aplicar e fechar Adicionar: 5 caixas de texto 4 botões de comando 1 controle winsock organize-os para se parecerem com a segunda imagem abaixo

Etapa 3: renomeação e outras alterações de propriedade

Renomeação e outras alterações de propriedade
Renomeação e outras alterações de propriedade

agora vamos mudar as legendas (o que é dito nos botões de comando) 1. clique em command12. olhe no lado direito das propriedades e encontre Caption3. mude para Host, faça o mesmo para o resto, mas faça-os: command2 = Connectcommand3 = Closecommand4 = Sendnow vamos mudar o que as caixas de texto dizem1. clique na caixa de texto que diz text12. vá para a janela de propriedades e encontre a propriedade Text3. deixe em branco4. faça o mesmo para aquele que diz Text25. agora clique em text3 e altere a propriedade text para 127.0.0.16. agora clique em text4 e mude a propriedade text para 12347. agora clique em text5 e mude a propriedade text para Name127.0.0.1 é seu ip local para que você possa testar o programa em seu computador quando seu done1234 for a porta, você pode fazer o que quiser quer, mas deixe 1234 por enquanto

Etapa 4: Alterar os nomes dos botões e caixas de texto

Alterando os nomes dos botões e caixas de texto
Alterando os nomes dos botões e caixas de texto
Alterando os nomes dos botões e caixas de texto
Alterando os nomes dos botões e caixas de texto

precisamos renomear os botões de comando e caixas de texto para torná-los mais fáceis de codificar

1. clique em Texto1 e vá para as propriedades e clique em nome e altere para txtLog eu escolhi isso porque é o log de mensagens que você envia e recebe 2. faça o mesmo para o resto mas faça os nomes: altere Texto2 para txtSend alterar Text3 para txtIP altere Text4 para txtPort altere Text5 para txtName altere Command1 para cmdHost altere Command2 para cmdConnect altere Command3 para cmdClose altere Comando 4 para cmdSend altere Winsock1 para sckMain agora há mais uma coisa que você precisa alterar clique em txtLog e na janela de propriedades encontre MultiLine e tornar realidade esta etapa pode causar alguma confusão se você tiver alguma dúvida, poste um comentário ou me envie uma mensagem

Etapa 5: codificando os botões de comando

Codificando os botões de comando
Codificando os botões de comando

agora é hora de escrever o código para os botões de comando começar com o primeiro cmdHost1. clique duas vezes nele para abrir a janela de código2. ele deve se parecer com estePrivate Sub cmdHost_Click () End Sub3. insira este codesckMain. LocalPort = txtPort.textsckMain.listennow o que isso significa ?? a primeira linha torna a porta local do Winsocks igual ao número na caixa de texto (txtPort) a segunda linha diz ao Winsock para escutar naquela porta para alguém tentando se conectar agora feche isso e clique duas vezes em cmdConnectenter neste codesckMain. RemoteHost = txtIP.textsckMain. RemotePort = txtPort.textsckMain. Connect as duas primeiras linhas alteram o RemoteHost e o RemotePort do winsock (sckMain) para o ip e porta que queremos o sckMain. Connect diz a ele para se conectar a alguém ouvindo nessa porta e ipnow para fechar, clique duas vezes em cmdClose e typesckMain.closetxtLog = txtLog.text & "Conexão fechada!" & vbCrlfthe sckMain.close diz ao winsock para desconectar a segunda linha adiciona Conexão fechada a txtLogdobro clique em cmdSend e typesckMain.senddata "[" & txtName.text & "]" & txtSend.texttxtLog = txtLog.text & "[" & txtName. text & "]" & txtSend.text & vbcrlftxtSend.text = "" as primeiras duas linhas estão erradas, eu as coloquei no editor e ele as altera quando salvo, então olhe para a imagem para ver o código correto. A primeira linha envia o texto em txtSend e seu nome na linha txtNamesecond adiciona a mensagem que você enviou e seu nome na linha txtLogthird limpa o texto em txtSend

Etapa 6: Codificando o Winsock

Codificando o Winsock
Codificando o Winsock

agora é hora de codificar o winsock! precisamos dizer a ele o que fazer quando alguém tenta se conectar e precisamos dizer onde colocar os dados que ele recebe; clique duas vezes no controle do winsock (sckMain) no canto superior direito do a caixa de código deve dizer: errorclique na caixa suspensa e selecione a solicitação de conexão agora deve ter feito um novo local para inserir o código, digite: If sckMain.state sckClose thensckMain.closeend ifsckMain.accept requestidtxtLog = txtLog.text & "Conectado a: "& sckMain. RemoteHostIP & vbcrlffirst e as segundas linhas verificam se o winsock (sckMain) está fechado e se não estiver, ele fecha a terceira linha fecha o if statementforth linha diz ao winsock (sckMain) para aceitar as conexões a quinta linha diz que você está conectado adicionando uma linha a txtLognow, precisamos dizer ao winsock o que fazer com os dados que ele recebe no canto superior direito da janela de código, clique na caixa suspensa e selecione: DataArrivalnow insira este código: dim Data as stringsckMain.getdata Data, vbstring txtLog = txtLog.text & data & vbcrlffirst line torna os dados uma string o sting é onde os dados recebidos serão colocados antes de serem adicionados à linha txtLogsecond obtém os dados e os coloca nos dados da string como uma linha vbstringthird adiciona os dados recebidos para txtLognow mais uma vez se estiverem confusos e você tiver dúvidas, poste um comentário ou me envie uma mensagem

Etapa 7: Usando o Programa / Conclusão

Usando o Programa / Conclusão
Usando o Programa / Conclusão

ok agora vou te dizer como usar o programa

no visual basic clique no arquivo e faça project1.exe salve-o em sua área de trabalho se houver algum erro, deixe um comentário e tentarei ajudá-lo agora a ir para onde você fez o programa e clicar duas vezes nele e dois programas devem aparecer em um clique no host e no outro clique em conectar e aquele em que você clicou no host deve dizer: Conectado a: 127.0.0.1 agora digite um nome para ambos e você pode enviar mensagens entre os dois funciona na LAN e nele pode funcionar na WAN, mas não tenho certeza. Deixe comentários me informando como eu me saí ou se você tiver dúvidas ou se apenas deseja se gostou ou não avalie

Recomendado: