как показать форму выигрыша моего приложения C # на клиентском ПК - PullRequest
0 голосов
/ 15 сентября 2011

У меня на сервере приложение win, которое должно отображать набор конкретных картинок и видео для каждого клиента .Я понятия не имею, как обнаружить клиентов и показать соответствующие слайды для каждого из них.

Есть ли решение?

Ответы [ 2 ]

0 голосов
/ 15 сентября 2011

Вы должны создать два разных проекта для запуска этого приложения. Сначала создайте проект, который должен называться Client, и скопируйте этот код.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Net.Sockets;
using System.IO;

namespace Task4Client
{
    class Program
    {
        static void Main(string[] args)
        {
            string data;
            string input;
            IPEndPoint ipEndPoint = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 9050);
            Socket server = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
            try
            {
                server.Connect(ipEndPoint);
            }
            catch (SocketException e)
            {
                Console.WriteLine("Unable To Connect To Server");
                Console.WriteLine(e.ToString());
                throw;
            }
            NetworkStream networkStream = new NetworkStream(server);
            StreamReader streamReader = new StreamReader(networkStream);
            StreamWriter streamWriter = new StreamWriter(networkStream);
          ///  data = streamReader.ReadLine();
          //  Console.WriteLine(data);
            while (true)
            {
                input = Console.ReadLine();
                if (input == "exit")
                {
                    break;
                }
                streamWriter.WriteLine(input);
                streamWriter.Flush();
                data = streamReader.ReadLine();
                Console.WriteLine(data);

            }
            Console.WriteLine("Disconnecting From Server");
            streamWriter.Close();
            streamReader.Close();
            networkStream.Close();
            server.Shutdown(SocketShutdown.Both);
            server.Close();
        }
    }
}

Затем создайте проект, который должен называться Server, и скопируйте и вставьте этот код.код

using System;
using System.Collections.Generic;
using System.Text;
using System.Net;
using System.Net.Sockets;
using System.IO;



namespace Task4Server
{
    class Program
    {
        static void Main(string[] args)
        {
            string data;
            IPEndPoint ipEndPoint = new IPEndPoint(IPAddress.Any, 9050);
            Socket newSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
            newSocket.Bind(ipEndPoint);
            newSocket.Listen(10);
            Console.WriteLine("waiting for a clinet ...");
            Socket client = newSocket.Accept();
            IPEndPoint newClient = (IPEndPoint)client.RemoteEndPoint;
            Console.WriteLine("Connected with {0} at port {1}", newClient.Address, newClient.Port);
            NetworkStream networkStream = new NetworkStream(client);
            StreamReader streamReader = new StreamReader(networkStream);
            StreamWriter streamWriter = new StreamWriter(networkStream);
           // string welcome = "Welcome to my Haseeb Server";
           // streamWriter.WriteLine(welcome);

            while (true)
            {
                try
                {
                    data = streamReader.ReadLine();
                }
                catch (IOException)
                {

                    break;
                }
                Console.WriteLine(data);
                streamWriter.WriteLine(data);
                streamWriter.Flush();
            }
            Console.WriteLine("Disconnected from {0}", newClient.Address);
            streamWriter.Close();
            streamReader.Close();
            networkStream.Close();


        }
    }
}

, затем сначала запустите серверное приложение, затем клиент и отправленное сообщение от клиента к серверу будут вести себя так, как клиент-серверное приложение наслаждается

0 голосов
/ 15 сентября 2011

вы говорите о клиент-серверном приложении, попробуйте программирование сокетов, которое предоставляет вам функциональные возможности IP-адресов, затем вы можете получить IP-адрес клиента и делать то, что вы хотите

...