Jak nawiązać połączenie miedzy dwoma programami w Lan ?

problemy z tworzeniem programów do obsługi sieci, internetu, e-mail itp..

Jak nawiązać połączenie miedzy dwoma programami w Lan ?

Nowy postprzez piotr49 » niedziela, 22 listopada 2009, 18:22

Mam do zrobienia zadanie na zaliczenie. Nie wiem od czego zacząć. Musze napisać program który:
- nawiąże samodzielnie połączenie w sieci lokalnej Lan
- zakładając że w sieci może być 10 000 komputerów
- nie podaje siÄ™ konfiguracji programu (ip serwera)
- aplikacja serwerowa może być uruchomiona na dowolnym komputerze w sieci
- program jest serwerem i klientem, jeśli w sieci nie ma działającego serwera to aplikacja przejmuje role serwera
-ma umożliwiać wysyłanie informacji tekstowej miedzy klientem i serwerem

Nie mam pojęcia jak nawiązać połączenie miedzy dwoma programami. Chciałem łączyć się po kolei z każdym adresem i sprawdzać czy dostane odpowiedz od wcześniej uruchomionego programu ale przy założeniu 10000 w sieci to nie ma sensu. Ma ktoś jakieś pomysły, sugestie ???
Avatar użytkownika
piotr49
Bladawiec
Bladawiec
 
Posty: 7
Dołączył(a): niedziela, 22 listopada 2009, 17:59
PodziÄ™kowaÅ‚ : 0
OtrzymaÅ‚ podziÄ™kowaÅ„: 0
System operacyjny: Windows XP Pro SP2
Kompilator: Embarcadero RAD Studio 2010
                  C++ Builder 2010
    NieznanyNieznana

Re: Jak nawiązać połączenie miedzy dwoma programami w Lan ?

Nowy postprzez piotr49 » Å›roda, 25 listopada 2009, 20:56

problem rozwiazany
umiesc na formie :
IdUDPServer

Kod: Zaznacz cały
void __fastcall TForm1::Button1Click(TObject *Sender)
{
//start serwera
  IdUDPServer1->DefaultPort=1152;
  IdUDPServer1->BroadcastEnabled=true;
  IdUDPServer1->Active = true;
  Memo1->Lines->Add(" *** IdUDPServer start ***");
}
//---------------------------------------------------------------------------
void __fastcall TForm1::IdUDPServer1UDPRead(TIdUDPListenerThread *AThread, TBytes AData,
        TIdSocketHandle *ABinding)
{
  Memo1->Lines->Add(" *** IdUDPServer Read "+TimeToStr(Time())+ "***");
  Memo1->Lines->Add(BytesToString(AData));
  Memo1->Lines->Add("From IP: "+ABinding->PeerIP);
  Application->ProcessMessages();
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
IdUDPServer1->Broadcast("wiadomosc na brodcast",1152);
}


szacunek za http://cyfbar.republika.pl/
Wiem ze to wymaga dużego nakładu pracy, wiedzy i czasu ale mam nadzieje że będziesz ją rozwijaj i aktualizował nadal :)
Avatar użytkownika
piotr49
Bladawiec
Bladawiec
 
Posty: 7
Dołączył(a): niedziela, 22 listopada 2009, 17:59
PodziÄ™kowaÅ‚ : 0
OtrzymaÅ‚ podziÄ™kowaÅ„: 0
System operacyjny: Windows XP Pro SP2
Kompilator: Embarcadero RAD Studio 2010
                  C++ Builder 2010
    NieznanyNieznana


  • Podobne tematy
    Odpowiedzi
    Wyświetlone
    Ostatni post

Powrót do Aplikacje sieciowe

Kto przeglÄ…da forum

Użytkownicy przeglądający ten dział: Brak zalogowanych użytkowników i 2 gości