re: kusura bakma sinavlar yüzünden gec cevap yaziyorum. yanitin icin tesekkurler. yolladigin kodlari denicem fakat exe haline cevirmem lazm nsl oluyor?

buda napolyonun Server yüzü! import java.io. ; import java. net. ; class Server { public static void main { String data = "selam dostum"; try catch } }

java'da hicbir pogrammi normal olarak. exe uzantili cikartamassin. tabiki bazi yöntemler var. exe yapabilmen icin, ama sonuc itibarilie cok büyük dokumanlar cikiyor, ve bu bytler gecer, luzumsus bir calisma olur sonucda. en iyi yöntem bu. Yurkardaki vermis oldugum programmlari nasil calistirabilirsin? cok basit sekilde anlatmaya calisicagim: Ilk önce java'nin sayfasinia girip oradan java special edition yani JAVA SE download yapman lazim. (link tam olarak veremiyorum boarda hata gösteriyor! ama böyle yapabilirsin: http://java.sun.com/ bu linke git sol tarafda Popular Downloads var orada JAVA SE var oraya gidiyorsun. sonra girdigin sayfada JDK 6u1 The Java SE Development Kit var orayadan download yapabilirsin. ondan sonra cekdigin javayi install yap. sana verdigin o programmlarin birisini Client. java olarak kayit edmen lazim bu cok önemli Server dokumanini ayni sekilde kayit yapman lazim yani Server. java olarak kayit yapman lazim. bu iki dokumanlari JAVA SE'yi nereye install yapdiysan misal bende C:\Programmlar\Java\jdk1.6.0\ . O demin anlattigim iki dokumani alip C:\Programmlar\Java\jdk1.6.0\bin icine atman lazim. C:\...\bin icinde cünkü java. exe ve javac. exe var programmini bunlarla calistiriyorsun! ve gelellim simdi en civcivli yere simdi iki DOS - penceresi aciyorsun ve programmlari kayit ettigin yere gidiyorsun yani C:\Programmlar\Java\jdk1.6.0\bin ondan sonra DOS pencerisinin birisinde javac Server. java programm hata göstermesse javac Client. java simdi dosyanin icine bakdigin zaman iki tane class dokumanin olusturdugunu göreceksin bular senin binevi. exe uzantili dokumanin. Alasilir birsekilde anladik olsursam javada. exe yerine. class var simdi programmimizi calisdirmaya gelelim. Programm icin iki tane dos penceresi lazim dedik. birisin icine sadece bu sekilde java Server yaziyoruz. diger dos penceresinin icine ise java Client yaziyoruz simdi programm calismasi lazim eger sorun cikarsa buraya yazarsin. ama en basit bir sekilde anlatmaya calisdim. -

... Kod: / server. c -- bir stream soket sunucu demosu / #include <stdio. h> #include <stdlib. h> #include <unistd. h> #include <errno. h> #include <string. h> #include <sys/types. h> #include <sys/socket. h> #include <netinet/in. h> #include <arpa/inet. h> #include <sys/wait. h> #include <signal. h> #define MYPORT 3490 // kullanicilarin baglanacagi port #define BACKLOG 10 // baglanti kuyrugunda kac kisi bekletilecek void sigchld_handler int main { int sockfd, new_fd; // sock_fd uzerinden dinle, yeni baglanti new_fd uzerinden struct sockaddr_in my_addr; // benim adres bilgim struct sockaddr_in their_addr; // baglanan kisinin adres bilgisi int sin_size; struct sigaction sa; int yes=1; if ((sockfd = socket(AF_INET, SOCK_STREAM, 0)) -1) if (setsockopt(sockfd, SOL_SOCKET, SO_REUSEADDR,&yes, sizeof -1) my_addr. sin_family = AF_INET; // host byte order my_addr. sin_port = htons ; // short, network byte order my_addr. sin_addr. s_addr = INADDR_ANY; // otomatik olarak benim IP'mi kullan memset(& , '\0', 8); // geriye kalan bölgeyi sifirla if (bind(sockfd, &my_addr, sizeof -1) if (listen -1) sa. sa_handler = sigchld_handler; // reap all dead processes sigemptyset ; sa. sa_flags = SA_RESTART; if (sigaction -1) while(1) { // main accept loop sin_size = sizeof ; if ((new_fd = accept(sockfd, &their_addr, &sin_size)) -1) printf("server: got connection from %s\n", inet_ntoa ; if (! fork close ; // ana prosesin buna ihtiyaci yok } return 0; } Kod: / client. c -- a stream socket client demo / #include <stdio. h> #include <stdlib. h> #include <unistd. h> #include <errno. h> #include <string. h> #include <netdb. h> #include <sys/types. h> #include <netinet/in. h> #include <sys/socket. h> #define PORT 3490 // istemcinin bağlanacağı port numarası #define MAXDATASIZE 100 // bir seferde kabul edebileceğimiz maksimum byte miktarı int main { int sockfd, numbytes; char buf ; struct hostent he; struct sockaddr_in their_addr; // bağlanan kişinin adresi bilgisi if (argc!= 2) if ((he=gethostbyname(argv )) NULL) if ((sockfd = socket(AF_INET, SOCK_STREAM, 0)) -1) their_addr. sin_family = AF_INET; // host byte order their_addr. sin_port = htons ; // short, network byte order their_addr. sin_addr = he->h_addr); memset(& , '\0', 8); // geriye kalanı sıfırla if (connect(sockfd, &their_addr, sizeof -1) if ((numbytes=recv(sockfd, buf, MAXDATASIZE-1, 0)) -1) buf = '\0'; printf ; close ; return 0; } bunu deneyin birde.. kütüphane sorunu çıkartıyorsa Library C diye aratırsanız googleda yardımı olacaktır

bu java' da cözülmüs bir örnek. Client tarafi! import java.io. ; import java. net. ; class Client { public static void main { try { Socket skt = new Socket("localhost", 1234); BufferedReader in = new BufferedReader(new InputStreamReader(skt. getInputStream ; System. out. print ; while (! in. ready System. out. println(in. readLine ; // tek bir satir oku ve onu ver System. out. print ; in. close ; } catch } }

pardon java sandim. c dilindeymis eger calisirsa cevirim kolay olur.

abi cok teskkrler peki. exe uzantiya nasil ceviririz? birde abi bunu nsl calistiririm bi yardim etsen. sifirdan anlatabilirsen cok makbule gecer. hangi yollari izleyecegim?

bir Socket Kanalini olusturmak icin bunlari bilmek lazim: Paket: java. net Server tarfinidaki Socket icin: Socket server = s. accept ; // s ServerSocketi temsil ediyor Client tarfindaki Socket icn: Socket client = new Socket("localhost", 2000); localhost yerine IP adressinide koyabilirsin. bunlarda baglanti kanali icin gerekli metotlar: InputStream sIn = socket. getInputStream ; OutputStream sOut = socket. getOutputStream ; umuarim yardimci olmusumdur

Merhaba Arkadaslar, Javada yazilmis server / client dan olusan basit bir socket programına ihtiyacım var. server ve client arasnda bir birbirne port üzerinden ip nosu girerek mesaj atabilcek. Calisan program varsa koduyla birlikte yollarsaniz cok makbule gecer. Cuma saat 9:00 a kdr elime gecmesi lazm. 3 haftadır arastırıyorum fakat buldugum kaynaklar genelde kütüphane hatası veriyor. C/C++, C# veya baska dilde yazılmıs varsada olabilir. Şimdiden Çok Teşekkürler...