1 Pertemuan 12 Membuat Program Client dan Server pada Win32 Console Application Matakuliah: H0483 – Network Programming Tahun: 2008 Versi: 2.0.

Slides:



Advertisements
Presentasi serupa
Aplikasi dan Pemrograman Jaringan
Advertisements

Pemrograman Jaringan Socket Programming Aurelio Rahmadian.
Pemograman 1 Pertemuan 1.
Memulai Pemrograman C++
Socket Programming Hernando Ivan Teddy S.Kom. Pertemuan 6 Pemrograman Jaringan STMIK GI MDP PALEMBANG 2013.
Socket Programming Isbat Uzzin.
Matakuliah : H0483 / Network Programming Tahun : 2008 Versi : 2.0
Matakuliah : Jaringan Komputer 2 Versi Materi Web Server Penyaji
Pertemuan 6 Server dengan Multi Thread pada Linux
Pertemuan 1 Mengapa Belajar Bahasa Rakitan ??
1 Pertemuan 18 Matriks Matakuliah: T0016/Algoritma dan Pemrograman Tahun: 2005 Versi: versi 2.
Pertemuan 4 Aplikasi Perhitungan Gaya Dengan Program Komputer
UDP Socket Programming
1 Pertemuan 1 Pendahuluan Matakuliah: H0483 – Network Programming Tahun: 2005 Versi: 1.0.
UDP.
1 Pertemuan 17 Polymorphism Matakuliah: T0456 ~ Algoritma dan Metode Object Oriented Programming Tahun: 2005 Versi: 5.
Pertemuan 3 ELEMENTARY TCP SOCKETS
DASAR SOCKET PROGRAMMING
TCP Socket Programmning
Matakuliah : Jaringan Komputer 2 Versi Materi Server Penyaji
1 Pertemuan Fungsi Matakuliah: T0016 / Algoritma dan Pemrograman Tahun: 2007 Versi: 6.
Matakuliah : T0534/Struktur Data Tahun : 2005 Versi : September 2005
1 Pertemuan 10 Pemrograman Jaringan pada Windows dengan VC ) Matakuliah: H0483 – Network Programming Tahun: 2008 Versi: 2.0.
Matakuliah : Jaringan Komputer 2 Versi Materi FTP Penyaji
1 Pertemuan 8 Model Kehandalan Suatu Sistem Matakuliah: H0204/ Rekayasa Sistem Komputer Tahun: 2005 Versi: v0 / Revisi 1.
1 Pertemuan 8 Advanced I/O function Matakuliah: H0483 / Network Programming Tahun: 2005 Versi: 1.0.
Mengaktifkan Microsoft Visual C++ : Klik Start Klik All Program, Microsoft Visual Studio 2008 Klik File, New, Project Klik Visual C++, Win32 Console Application.
As’ad Djamalilleil Fungsi exec() As’ad Djamalilleil
SISTEM TERDISTRIBUSI CSG3L3 ~SPO~
Pertemuan 5 Balok Keran dan Balok Konsol
1 Pertemuan 12 Kasus : Final Matakuliah: M0064/Programming I Tahun: 2005 Versi: >
1 Pertemuan 5 PPh PASAL 21 Matakuliah: A0572/ Perpajakan Tahun: 2005 Versi: Revisi 1.
Pertemuan 5 I/O Multiplexing
1 Pertemuan 1 Pengenalan Dasar Visual Basic Matakuliah: M0462/Programming I Tahun: 2005 Versi: >
Matakuliah : R0022/Pengantar Arsitektur Tahun : Sept 2005 Versi : 1/1
1 Pertemuan 3 Pengenalan menu dasar 3D Matakuliah: R0374/Komputasi Desain Arsitektur II Tahun: 2005 Versi: V-1/R-0.
1 Pertemuan > > Matakuliah: > Tahun: > Versi: >. 2 Learning Outcomes Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu : >
1 Pertemuan 9 Unix Domain Protocol Matakuliah: H0483 / Network Programming Tahun: 2005 Versi: 1.0.
1 Pertemuan 13 Pembahasan Kasus Matakuliah: M0462/Programming I Tahun: 2005 Versi: >
1 Pertemuan 7 Diferensial Matakuliah: R0262/Matematika Tahun: September 2005 Versi: 1/1.
Pertemuan 04 Fungsi-fungsi Microsoft Excel
Matakuliah : H0483 – Network Programming Tahun : 2008 Versi : 2.0
Matakuliah : F0562 / Lab Pengantar Aplikasi Komputer
Cara membuat Shortcut dan mem Paket Project
Memahami Ruang Lingkup Pemrograman
Matakuliah : H0483 – Network Programming Tahun : 2008 Versi : 2.0
Memahami Ruang Lingkup Pemrograman
Polymorphism Pertemuan 23-24
Pertemuan 2 Socket Introduction
Aplikasi dan Pemrograman Jaringan
Socket Programming - 1 (TCP)
Pertemuan 6 Server dengan Multi Thread
Matakuliah : H0483 – Network Programming Tahun : 2008 Versi : 2.0
Pertemuan 11 Pemrograman Winsock pada VB
Matakuliah : T0456 ~ Algoritma dan Metode Object Oriented Programming
Matakuliah : Jaringan Komputer 2 Versi Materi Web Server Penyaji
LANGKAH AWAL MEMBUAT PROGRAM C DENGAN VISUAL C
Soal Latihan Pertemuan 03 Network Programming
Aplikasi dan Pemrograman Jaringan
Tahun : <<2005>> Versi : <<1/2>>
Pertemuan 10 Komputer dan komunikasi informasi melalui internet
Pertemuan 05 Manajemen Daftar
SISTEM OPERASI JARINGAN KD 13 DHCP SERVER Wahyudi Wijayanto, ST.
Memahami Ruang Lingkup Pemrograman
TCP Socket Programmning
UDP Socket Programming
MENGATUR ALAMAT IP.
Materi 7 Ritzkal,S.Kom,CCNA.
BAB 1 Mengoperasikan Bahasa Pemrograman Pascal dengan menggunakan software Delphi Console Aplication.
TCP Socket Programming
Transcript presentasi:

1 Pertemuan 12 Membuat Program Client dan Server pada Win32 Console Application Matakuliah: H0483 – Network Programming Tahun: 2008 Versi: 2.0

2 Learning Outcomes Pada akhir pertemuan ini, diharapkan mahasiswa akan mampu : Mendemonstrasikan program aplikasi Client Server pada Win32 Console Application

3 Outline Materi Kasus: DayTimeServer dan DayTimeClient Membuat program Client di Win32 Console Application dengan menggunakan Compiler –Micosoft Visual C –Borland C –Dev C++ Membuat program Server di Win32 Console Application dengan menggunakan Compiler –Micosoft Visual C –Borland C –Dev C++

4 Membuat Program DayTimeServer dengan Microsoft VC Langkah-Langkah : Jalankan VC++ kemudian pilih menu File  New Masukkan nama Project dan Lokasi / Folder untuk menyimpan project tersebut Kemudian pilih Win32 Console Application

5 Membuat Program DayTimeServer dengan Microsoft VC Pilih : A “Hello World” Application kemudian klik Finish

6 Membuat Program DayTimeServer dengan Microsoft VC Open file: DayTimeServerDos.cpp kemudian edit file tersebut seperti sbb:

7 Membuat Program DayTimeServer dengan Microsoft VC #include "stdafx.h" #include int main(int argc, char* argv[]) { WSADATA wsaData; WSAStartup(MAKEWORD(2, 2), &wsaData); struct sockaddr_in servAddr; SOCKET sktServ; sktServ = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); if(sktServ == INVALID_SOCKET){ printf("Error in creating socket [%i]\n", WSAGetLastError()); WSACleanup(); return(-1); }

8 Membuat Program DayTimeServer dengan Microsoft VC memset(&servAddr, 0, sizeof(struct sockaddr_in)); servAddr.sin_family = AF_INET; servAddr.sin_addr.s_addr = inet_addr(" "); servAddr.sin_port = htons(6789); if(bind(sktServ, (struct sockaddr*)&servAddr, sizeof(servAddr)) == SOCKET_ERROR){ printf("Error in binding socket [%i]\n", WSAGetLastError()); closesocket(sktServ); WSACleanup(); return(-1); } if(listen(sktServ, 4) == SOCKET_ERROR){ printf("Error in listen socket [%i]\n", WSAGetLastError()); closesocket(sktServ); WSACleanup(); return(-1); }

9 Membuat Program DayTimeServer dengan Microsoft VC struct sockaddr_in clientAddr; int clientAddrLen = sizeof(clientAddr); SOCKET sktToClient; sktToClient = accept(sktServ, (struct sockaddr*)&clientAddr, &clientAddrLen); if(sktToClient == INVALID_SOCKET){ printf("Error in accept client [%i]\n", WSAGetLastError()); closesocket(sktServ); WSACleanup(); return(-1); } int sent; char sBuf[1024] = ""; time_t ltime; time( &ltime ); sprintf(sBuf,"The time is %s\n", ctime(&ltime )); sent = send(sktToClient, sBuf, strlen(sBuf), 0); if(sent == 0) printf("Client closes connection\n"); else if(sent < 0) printf("Error in sending out data [%i]\n", WSAGetLastError()); closesocket(sktServ); closesocket(sktToClient); WSACleanup(); return 0; }

10 Membuat Program DayTimeServer dengan Microsoft VC Tambahkan : wsock32.lib pada Project settings VC++ sbb:

11 Membuat Program DayTimeServer dengan Microsoft VC Kemudian compilasi program ! Setelah selesai, buat DayTimeClient nya Tahap-tahapnya sama dengan DayTime Server diatas, tetapi code / programnya adalah sbb:

12 Membuat Program DayTimeClient dengan Microsoft VC #include "stdafx.h" #include int main(int argc, char* argv[]) { WSADATA wsaData; WSAStartup(MAKEWORD(2,2), &wsaData); SOCKET sktClient; sktClient = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP); if(sktClient == INVALID_SOCKET){ printf("Error in creating socket [%i]\n", WSAGetLastError()); WSACleanup(); return(-1); } // Connect to a server. struct sockaddr_in clientAddr; clientAddr.sin_family = AF_INET; clientAddr.sin_addr.s_addr = inet_addr(" "); clientAddr.sin_port = htons(6789);

13 Membuat Program DayTimeClient dengan Microsoft VC if(connect(sktClient, (struct sockaddr*)&clientAddr, sizeof(clientAddr)) == SOCKET_ERROR){ printf("Error in connecing server [%i]\n", WSAGetLastError()); closesocket(sktClient); WSACleanup(); return(-1); } int recved; char rBuf[1024] = ""; recved = recv(sktClient, rBuf, 1024, 0); if(recved > 0) printf("%s\n", rBuf); else if(recved == 0) printf("Server closes connection\n"); else{ printf("Error in receiving data [%i]\n", WSAGetLastError()); closesocket(sktClient); WSACleanup(); return(-1); } closesocket(sktClient); WSACleanup(); return 0; }

14 Membuat Program DayTimeClient dengan Microsoft VC Tahap Selanjutnya : Test program Jalankan program server terlebih dahulu Kemudian jalankan program Clientnya Kedua program diatas hanya jalan pada satu komputer karena menggunakan local IP address

15 Latihan 1.Modifikasi Contoh program pada power point sebelumnya, agar nomor Port dan nomor IP nya bisa dirubah-ubah pada command line. (contoh: DayTimeServer ) 2.Contoh Program pada Power Point sebelumnya adalah Program DayTimeServer dan DayTimeClient dengan menggunakan protocol TCP/IP. Coba rubah/modifikasi agar kedua program tersebut menggunakan protokol UDP

16 Latihan 3.Kompilasi kedua contoh program diatas dengan compiler yang lain misalnya : Dev C++, atau Borland C++ (dan modifikasi bila perlu)