CYFROWY BARON • PROGRAMOWANIE • Zobacz wÄ…tek - [BCB6] Komunikator + wysyÅ‚anie plików

[BCB6] Komunikator + wysyłanie plików

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

[BCB6] Komunikator + wysyłanie plików

Nowy postprzez grigorij89 » czwartek, 14 kwietnia 2011, 20:42

Jestem nowy więc : Witam wszystkich na forum!
Mam kilka pytań dotyczących komunikatora (tego od Cyfrowego Barona) , chodzi mi o oto za co odpowiadają poniższe linijki:
Kod: Zaznacz cały
MemoKomunikaty->SetFocus();
Application->ProcessMessages();
EditKomunikat->SetFocus();

Mam także pytanie jak przerobić ten programik aby wysyłać wiadomość do konkretnego hosta. I ostatnia rzecz ,obsługa plików. Jak zaimplementować coś takiego , że klient wysyła prośbę o plik a serwer w odpowiedzi nu go wysyła.
Zamieszczam pliki z tym komunikatorem
Z góry dziękuję za pomoc i zapraszam do dyskusji na ten temat na gg.
Unit1.h
Komunikator.cpp
Unit1.cpp
Nie masz wystarczających uprawnień, aby zobaczyć pliki załączone do tego postu.
Avatar użytkownika
grigorij89
Bladawiec
Bladawiec
 
Posty: 11
Dołączył(a): czwartek, 14 kwietnia 2011, 19:19
PodziÄ™kowaÅ‚ : 8
OtrzymaÅ‚ podziÄ™kowaÅ„: 0
System operacyjny: Windows 7
Ubuntu 10.10
Kompilator: Embarcadero RAD Studio 2010
Visual Studio 2008
Gadu Gadu: 8442357
    Windows 7Firefox

Re: [BCB6] Komunikator + wysyłanie plików

Nowy postprzez Cyfrowy Baron » piÄ…tek, 15 kwietnia 2011, 09:08

grigorij89 napisał(a):Mam kilka pytań dotyczących komunikatora (tego od Cyfrowego Barona) , chodzi mi o oto za co odpowiadają poniższe linijki:


KOD cpp:   •  UKRYJ  •
MemoKomunikaty->SetFocus();   // ustawia focus na MemoKomunikaty
Application->ProcessMessages();   // odÅ›wieża kolejkÄ™ komunikatów
EditKomunikat->SetFocus();    // ustawia focus na EditKomunikat


Ustawianie focus-a to po prosty uaktywnianie komponentu, w oknie zawsze jakiś obiekt jest aktywny. Odświeżenie kolejki komunikatów, pozwala programowi pobrać i przetworzyć komunikaty oczekujące w kolejce.

grigorij89 napisał(a):Mam także pytanie jak przerobić ten programik aby wysyłać wiadomość do konkretnego hosta


Tak jak to jest podane w poradniku, z tą różnicą, że tam wysyłana jest wiadomość najpierw do serwera a potem do klienta. Jeżeli chcesz utworzyć komunikacje nie na linii klient -> serwer - > klient, lecz klient -> klient, to po pierwsze obydwa klienty muszą też pracować w trybie serwera, po drugie by mogły się połączyć muszą znać na wzajem swoje zewnętrzne adresy IP. Rozwiązanie klient -> serwer - > klient sprawia, że każdy klient przekazuje serwerowi swój zewnętrzny adres IP, potem odbiera od ciebie nazwę użytkownika, z którym chcesz się połączyć, sprawdza jaki IP ma użytkownik, z którym chcesz się połączyć, potem przesyła wiadomość do tego użytkownika. Jeżeli nie znasz IP użytkownika, to się z nim nie połączysz, chyba że użytkownik przyśle ci e-mailem swoje IP, potem ty wprowadzisz w swoim kliencie to IP, prześlesz na to IP swoje IP i wtedy gdy obydwaj znacie swoje adresy możecie się komunikować :). Możesz też zrobić tak, że ty - klient1 wysyłasz na serwer swój IP, oraz nazwę użytkownika - klient2 z którym chcesz się połączyć. Serwer musi przechowywać nazwy użytkowników. Jeżeli klient2 jeszcze się nie zalogował na serwer to serwer odsyła do klient1 wiadomość, że nie można się połączyć z klient2. Jeżeli klient2 zalogował się na serwer to również wysłał na ten serwer swój IP. Serwer w takiej sytuacji odsyła do klient1 adres IP klient2, a do klient2 wysyła adres IP klient1 i teraz klien-ci mogą się komunikować ze sobą bez udziału serwera, gdyż już znają swoje IP.
grigorij89 napisał(a):Jak zaimplementować coś takiego , że klient wysyła prośbę o plik a serwer w odpowiedzi nu go wysyła.


Klient np. kilent1 wysyła plik na serwer. Serwer informuje klient2, że na serwerze jest dla niego plik i wysyła mu adres FTP tego pliku. Klient2 poprzez protokół FTP pobiera ten plik.

grigorij89 napisał(a):Z góry dziękuję za pomoc i zapraszam do dyskusji na ten temat na gg.


Problemy z GG zostały już dość szeroko omówione na tym forum. Jeżeli planujesz stworzyć komunikator do komunikacji z GG, to natkniesz się na wiele problemów, gdyż GG zabezpieczyło się przed komunikacją z ich serwerami przez nieautoryzowane (inne niż GG) komunikatory.

Za ten post autor Cyfrowy Baron otrzymał podziękowanie od:
grigorij89
Avatar użytkownika
Cyfrowy Baron
Administrator
Administrator
 
Posty: 4716
Dołączył(a): niedziela, 13 lipca 2008, 15:17
PodziÄ™kowaÅ‚ : 12
OtrzymaÅ‚ podziÄ™kowaÅ„: 442
System operacyjny: Windows 7 x64 SP1
Kompilator: Embarcadero RAD Studio XE2
C++ Builder XE2 Update 4
SKYPE: cyfbar
Gadu Gadu: 0
    Windows XPFirefox

Re: [BCB6] Komunikator + wysyłanie plików

Nowy postprzez grigorij89 » piÄ…tek, 15 kwietnia 2011, 18:40

Dzięki Baron za odpowiedź co do gg to chodziło mi o kontakt i pomoc , a nie napisanie czegoś jak gadu.
Teraz chciałbym napisać to wysyłanie plików. Ale kompletnie nie wiem jak się za to zabrać , widziałem poradnik z indy na tej stronce. Jednak u mnie w BC6 brak indy. Mam jeszcze Rad Studio 2010 ale tam to jest inaczej niż opisane w poradniku. :( :(
co radzicie zrobić ?
Avatar użytkownika
grigorij89
Bladawiec
Bladawiec
 
Posty: 11
Dołączył(a): czwartek, 14 kwietnia 2011, 19:19
PodziÄ™kowaÅ‚ : 8
OtrzymaÅ‚ podziÄ™kowaÅ„: 0
System operacyjny: Windows 7
Ubuntu 10.10
Kompilator: Embarcadero RAD Studio 2010
Visual Studio 2008
Gadu Gadu: 8442357
    Windows 7Firefox


  • 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 0 gości

cron