Szerző Téma: Server Client C#  (Megtekintve 5659 alkalommal)

Nem elérhető Azzeroth

  • Kezdő
  • **
  • Hozzászólások: 56
  • Op. Rendszer: Windows 8.1 Enterprise & Ubuntu 14.04 LTS
Server Client C#
« Dátum: 2014 Március 29, 02:29:07 am »
Üdv.

Nekem lenne egy olyan kérdésem, hogy valaki tudna egy tutorialt küldeni, vagy írni arra,
hogy hagyan is működik az, hogy feltételezzük én c#-ban megírtam egy programot ami mindegy nekem
milyen adatot küld a szervernek ( IP alapján ), csak még mindig nem értem pl. wow szerónal,
a szerver üzemeltetőnek kell a fix IP cim, de akkor a kliensnél miért nem?

Valaki c#-ban össze tudna nekem dobni egy oda vissza IP alapján müködös konzolos, vagy form-os projectet?
nagyon megköszönném :/ !!

Nagy Arnold

Nem elérhető ktomi

  • Kezdő
  • **
  • Hozzászólások: 65
    • Annapolis
Re:Server Client C#
« Válasz #1 Dátum: 2014 Március 31, 02:05:43 am »
Erre én is kíváncsi vagyok, hogy hogyan működhet ez a szerver-kliens kapcsolat. ::)

Nem elérhető Zoltan

  • Újonc
  • *
  • Hozzászólások: 46
Re:Server Client C#
« Válasz #2 Dátum: 2014 Március 31, 11:14:01 am »
dinamikus IP nem azt jelenti hogy masodpercenkent, vagy  percenkent valtozik az IP cimed

Nem elérhető AximCore

  • Haladó
  • ****
  • Hozzászólások: 274
    • AximCore
Re:Server Client C#
« Válasz #3 Dátum: 2014 Március 31, 10:41:15 pm »
"Socket programming c#" a googlebe és találsz ezer meg egyet....  ;)
"Tanítani lehet az ostobát, de gondolkodásra bírni nem."
A Talmud

Windows Firewall
http://devopsreactions.tumblr.com/

Why use Windows, if you have open doors… to Linux

Nem elérhető Azzeroth

  • Kezdő
  • **
  • Hozzászólások: 56
  • Op. Rendszer: Windows 8.1 Enterprise & Ubuntu 14.04 LTS
Re:Server Client C#
« Válasz #4 Dátum: 2014 Április 03, 08:04:27 am »
Köszönöm a váalszokat, mert eljutottam odáig, hogy a kliens küldjön adatot a szervernek, és a szerver fogadja is pillanatkotok belül csak az oda vissza kapcsolatra nem jöttem még rá :( google-ben meg már jó pár oldalt végig néztem :/
Mondjuk akkor csak én vagy béna szerintem :/

Nem elérhető kagebunshin

  • Középhaladó
  • ***
  • Hozzászólások: 122
Re:Server Client C#
« Válasz #5 Dátum: 2014 Április 03, 01:30:43 pm »
Üdv!

Ha tudsz küldeni adatot a szerver felé és ott fogadni, akkor gyakorlatilag ugyanúgy kell visszafelé is. Ha megosztod a kódot többe tudunk segíteni.
Addig is leírok egy egyszerű példát.

Szerver:
using System;
using System.Net;
using System.Net.Sockets;

namespace Szerver
{
    class Program
    {
        static void Main(string[] args)
        {
            TcpListener listener = new TcpListener(IPAddress.Any, 8000);
            listener.Start();

            Socket s = listener.AcceptSocket();

            byte[] adat = new byte[2];
            s.Receive(adat);

            foreach (byte b in adat)
                Console.WriteLine(b);

            s.Send(adat);

            s.Close();
            listener.Stop();
        }
    }
}
Ez mindössze annyit csinál, hogy a 8000-es porton várakozik egy kliens csatlakozására. Ha ez megtörtént 2 byte adatot vár a klienstől, amit kiír és rögtön vissza is küldi a kliensnek, majd lezárja a kapcsolatot.

Kliens:
using System;
using System.IO;
using System.Net.Sockets;

namespace Kliens
{
    class Program
    {
        static void Main(string[] args)
        {
            TcpClient client = new TcpClient();
            client.Connect("127.0.0.1", 8000);

            Stream stm = client.GetStream();

            byte[] adat = new byte[] { 15, 23 };
            stm.Write(adat, 0, 2);

            byte[] fogadott = new byte[2];
            stm.Read(fogadott, 0, 2);

            foreach (byte b in adat)
                Console.WriteLine(b);

            stm.Close();
            client.Close();
        }
    }
}
Localhostra csatlakozik a 8000-es porton. Küld 2 byte-ot a szervernek (15-öt és a 23-at). Visszaolvassa, kiírja és zárja a kapcsolatot.
"-Egy dolgot viszont elárulhatnál nekem. Ki találta ki, hogy a fák őreinek erejével szálljatok szembe velem, mert nem te ugye? Te nem tudtad!
-Nem... de azért vagyunk többen, hogy valaki tudja."

Nem elérhető Azzeroth

  • Kezdő
  • **
  • Hozzászólások: 56
  • Op. Rendszer: Windows 8.1 Enterprise & Ubuntu 14.04 LTS
Re:Server Client C#
« Válasz #6 Dátum: 2014 December 06, 07:26:00 pm »
Köszönöm, kicsit késve, de elolvastam :)
Ez tökéletes már szinte :D

Még 1 dologban, ha van kedve valakinek segítséget kérnék:

Tudna nekem egy olyan server kliens kapcsolatot, írni linkelni, ami ezt tartalmazná:

Feltételezzük egy kezdetleges wow szerver - kliens kapcsolat

A Kliens küld egy "packet"-et ami tartalmaz egy felhasználónevet, jelszót, számot
A szerver várakozik majd lekérdezi, hogy hanyas számű packet jön(pl: 0x00A0), fogadja, majd egy switch-case által deríti ki, hogy mit akar.És aztán mondjuk ha felhnév megegyezik Azzeroth-tal akkor visszaküldi neki ,hogy 1, ha nem egyezik, akkor 0.

Nagyon szépen megköszönném :/



Nem elérhető EroniX

  • Középhaladó
  • ***
  • Hozzászólások: 224
  • www.azuregoswow.com
  • Op. Rendszer: Windows 8 Pro x64
Re:Server Client C#
« Válasz #7 Dátum: 2014 December 21, 09:48:10 am »
Ezt az oldalt nyálazd át: http://msdn.microsoft.com/en-us/library/bew39x2a(v=vs.110).aspx
Ez alapján megkell tudnod oldani.
Azuregos Delta Force

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27