PDA

Prikaži potpunu verziju : Delphi 7 - Hello word


milosavljevic
3.8.2013, 1:44
Napravim program tako da ono sto upisem u edit kontrolu (pre nego sto pritisnem enter) doda kao novu liniju u memo kontrolu.

Sta dalje treba da uradim da bih mogao da chatujem sa drugarom preko tog programa preko interneta?

water wizard
3.8.2013, 2:02
ja sam mislio da ćemo da pričamo o pisanju hello world :(

milosavljevic
3.8.2013, 2:05
Pa o tome i pricamo u sustini :)

Tako da mozemo preformulisati zadatak :
Treba napraviti program tako da kada drugaru posaljem kopiju i obojica ga startujemo on primi poruku "Hello word".

Ivan452
3.8.2013, 3:05
Pa, to sto hoces da napravis je malo komplikovanije od onoga sto se smatra pod 'hello world' programom. :)
Znaci, bice ti potrebna neka vrsta komunikacije preko interneta (server-klijent arhitektura).
Evo ti neki linkovi koji ti mogu pomoci

http://sourceforge.net/projects/indy10clieservr/
http://delphi.about.com/od/networking/l/aa112602a.htm

Mislim da ce ti ovo pomoci, ovo sa izvornim kodom je dosta slicno onome sto ti treba.

milosavljevic
3.8.2013, 4:37
Kod mene nema tih komponenti.
Mislim da je bilo ovih TClientSocket i TServerClient kada sam imao Deplhi 6.
Evo About stranice moje verzije : http://prntscr.com/1j32fb
I spisak tabova na paleti komponenata : http://prntscr.com/1j331l

A ovo su dve komponente koje lice na gore pomenute :
http://prntscr.com/1j322d

Ako one mogu da posluze sta treba radim sa njima?

-------------------------------------------------

Odradio sam Indy SOAP Server/Client/Service turorijal korak po korak sa
http://www.digicoast.com/delphi_soap_standalone.html
Sve radi kako je tamo opisano ali nista ne razumem i ne znam moze li to da posluzi za ovaj "Hello Word" koji meni treba.

Teva
6.8.2013, 22:44
Treba ti komunikacija preko mreže.

E sad, treba malo da poznaješ mrežu i njenu arhitekturu da bi dalje mogao da razumeš.
Pošto delfi ne znam, ispisaću ti neku osnovu pa možda uspeš da preneseš na to što tebi treba. :)

Komunikacija preko mreže (bar koliko se tiče tebe kao programera) se vrši preko soketa (socket), koji se ponaša kao datoteka u koju nešto pišeš/čitaš, pa se nešto tu desi pa drugar isto to uradi na njegovom soketu.

Naravno, pre pisanja/čitanja se konektuješ na drugara i on na tebe. Sad dolazimo do klijent/server arhitekture. U mreži gde ti možeš da vidiš drugarevu (drugarovu il kako god već) IP adresu tebi server nije potreban već se kačiš direktno na njegovu IP adresu i socket (znači klijent klijent arhitektura xD ). Kako na internetu postoje javne i privatne IP adrese, to sad komplikuje našu klijent/klijent arhitekturu. Odnosno javnu ip adresu ti možeš da vidiš preko mreže i da komuniciraš sa njom dok privatnu ne možeš da vidiš. odnosno ako ti imaš privatnu ip adresu (a imaš je zato što se javna ip plaća dodatno (ako ništa drugo :P) ) i drugar ima isto privatnu ip adresu, onda klijent klijent arhitektura nije moguća jer dve privatne ip adrese ne mogu da se vide međusobno. Pa se uvodi server, koji bi imao javnu ip adresu (pošto javnu ip adresu možeš da vidiš, dok privatnu ne možeš, kao što sam već rekao), i koji bi bio "posrednik" između tebe i drugara (jednog, dva, tri , šest, sto xD ).

Znači, da bi komunicirao preko interneta moraš da imaš ili javne adrese, ili server. Server je ništa drugo do običnog posrednika (bar u tvom slučaju), koji primi od tebe neku poruku i samo je prosledi drugaru (ili drugarima).

Suma sumarum, da bi realizovao to što hoćeš, prvo treba da napišeš aplikaciju koja će da se kači direktno na ip adresu neku (server zabatališ za početak), kada ti to proradi samo ubaciš u celu priču server koji bi samo registrovao ko se na njega konektovao (verujem da to postoji u tutorijalu) i prosleđivao podatke gde to već treba, aplikacije koje si prethodno napisao ostaju iste, samo što više neće direktno komunicirati već će ići preko servera.

Sad nisam siguran dal je ista priča u delfiju, pošto nisam radio sa njim nikad. Msm arhitektura je ista sigurno, samo što verujem da postoje već gotovi objekti koji će ti olakšati život :)

milosavljevic
6.8.2013, 23:55
Ne vredi mi to nista. Razumem otprilke o cemu pricas, ali nista ne mogu da uradim.
Treba mi neko ko zna bas konkretno sta treba da odradim.

Kada napravim posebno klijent i server preko tih Socket (TcpServer i TcpClient) komponenta, nikakav transfer podataka ne mogu da uradim izmedju njih ni na svom kompu a kamoli ako ih razdvojim na dva razlicita :
Evo kako izgleda lista trigerovanih dogadjaja (na serveru se nista ne desava kada klijent salje) :

http://prntscr.com/1jsfpr