Xây dựng chương trình chat camera trong mạng LAN - pdf 28

Download miễn phí Đồ án Xây dựng chương trình chat camera trong mạng LAN



MỤC LỤC
LỜI CẢM ƠN. 1
MỤC LỤC 2
CHƯƠNG 1: GIỚI THIỆU TỔNG QUAN 4
1.1 Tìm hiểu lập trình mạng với C# 4
1.1.1 Tổng quan về C# 4
1.1.2 Cấu trúc của C# 4
1.1.3 Lập trình mạng với C# 4
1.1.4 Lập trình với C# Socket Helper Classes 5
1.1.5 Lập trình với Thread 7
CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 8
2.1 Cấu trúc chung của chương trình. 8
2.2 Phân tích và thiết kế hệ thống 8
2.2.1 Thiết kế các module 8
2.2.1.1 Module 1 (ListenRequest) 8
2.2.1.2 Module 2 (ConnectToServer) 9
2.2.1.3 Module 3 (SendListUser) 9
2.2.1.4 Module 4 (SendCamera) 9
2.2.1.5 Module 5 (DisplayCamera) 9
2.2.2 Phân tích các lớp 9
CHƯƠNG 3: CHƯƠNG TRÌNH THỰC NGHIỆM 13
3.1 Giao diện chương trình 13
3.1.1 Giao diện chương trình Server 13
3.1.2 Giao diện chương trình Client 13
3.2 Kết quả. 15
3.3 Nhận xét. 15
KẾT LUẬN. 16
TÀI LIỆU THAM KHẢO. 16
 
 





Để tải tài liệu này, vui lòng Trả lời bài viết, Mods sẽ gửi Link download cho bạn ngay qua hòm tin nhắn.

Ket-noi - Kho tài liệu miễn phí lớn nhất của bạn


Ai cần tài liệu gì mà không tìm thấy ở Ket-noi, đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí

Tóm tắt nội dung tài liệu:


LỜI CẢM ƠN.
Trước tiên, em xin bày tỏ lòng biết ơn chân thành và sâu sắc tới thầy giáo Đỗ Xuân Toàn, đã tận tình chỉ bảo và giúp đỡ em hoàn thành luận văn này. Bên cạnh đó em cũng xin chân thành Thank các thầy giáo, cô giáo trong khoa Công Nghệ Thông Tin của trường Đại học Dân lập Hải Phòng, những người đã truyền thụ cho em những kiến thức quý báu, giúp em có một hành trang vững chắc để bước vào cuộc sống mới sau bốn năm học tập tại trường, đồng thời cũng tạo mọi điều kiện thuận lợi để em hoàn thành luận văn tốt nghiệp.
Dưới đây là những gì mà em đã tìm hiểu và nghiên cứu được trong thời gian vừa qua. Do tính thực tế và kiến thức còn hạn chế. Vì vậy em rất mong nhận được sự chỉ bảo của các thầy cô giáo và sự tham gia đóng góp ý kiến của các bạn để em có thể hoàn thành tốt đề tài của mình.
Em xin chân thành cảm ơn!
Hải phòng, Ngày 20 háng 7 năm 2008 Sinh viên thực hiện Lê Thị Thu Linh
MỤC LỤC
MỞ ĐẦU
Cùng với sự phát triển chung của toàn xã hội, công nghệ thông tin cũng từng bước phát triển và được ứng dụng rộng rãi trong thực tế, từ trường học, các cơ quan nhà nước cho đến các doanh nghiệp.Như ta đã biết sự phát triển đó có sự đóng góp không nhỏ của mạng máy tính đặc biệt là mạng Internet.
Hiện nay con người có thể trao đổi thông tin với nhau thông qua các dịch vụ như: chatyahoo, email,... Bên cạnh đó mạng LAN cũng được ứng dụng rộng rãi phục vụ nhu trao đổi thông tin. Nhu cầu trao đổi thông tin ngày càng đa dạng hơn không những có thể nghe được tiếng nói mà còn muốn nhìn thấy nhau. Chat Camera là một ứng dụng của mô hình mạng LAN. Chat camera là một chương trình giúp con người có thể trao đổi hình ảnh với nhau. Chat camera đáp ứng đầy đủ nhu cầu về hình ảnh và kinh tế. Chương trình rất dễ triển khai trong thực tế vì chỉ cần cơ quan, doanh nghiệp có hệ thống mạng LAN và thiết bị camera(webcam). Chương trình được xây dựng trên ngôn ngữ lập trình C# với Socket.
Luận văn được chia ra 3 chương:
Chương 1 Giới thiệu tông quan.
Chương 2 Phân tích thiết kế hệ thống
Chương 3 Chương trình thực nghiệm
GIỚI THIỆU TỔNG QUAN
Tìm hiểu lập trình mạng với C#
Tổng quan về C#
- C# là một ngôn ngữ lập trình hướng đối tượng. Cấu trúc và lập luận của C# có đầy đủ các đặc tính của một ngôn ngữ lập trình hướng đối tượng trước đó (C++, Java). C# được thiết kế dùng cho nền .NET framework, một công nghệ mới và đầy triển vọng trong việc phát triển các ứng dụng hệ thống và mạng internet
Cấu trúc của C#
Một chương trình C# bao gồm các thành phần như sơ đồ dưới đây:
Lập trình mạng với C#
C# là một ngôn ngữ hỗ trợ lập trình mạng rất mạnh. Trong C#, có nhiều lớp đối tượng đã được xây dựng sẵn để hỗ trợ lập trình ứng dụng mạng như socket, TCPListener,
a. Lập trình với Socket
Sau đây là những thành phần hỗ trợ lập trình socket trong C#:
Địa chỉ IP trong C#
IPAddress
IPEndPoint
IPAddress
Một đối tượng IPAddress được sử dụng để trình bày một địa chỉ IP đơn. Giá trị này sau đó có thể được sử dụng trong một vài cách của socket để trình bày địa chỉ IP.
Định dạng này cho phép bạn chuyển đổi một chuỗi thể hiện địa chỉ IP theo cách viết thông dụng thành một đối tượng IPAddress.
IPEndPoint
.NET Framework sử dụng đối tượng IPEndPoint để trình bày một bộ (một đầu socket) IP address/(TCP hay UDP)port. Một đối tượng IPEndPoint được sử dụng khi nối kết những sockets tới địa chỉ cục bộ, hay khi kết nối sockets tới một địa chỉ ở xa.
IPEndPoint(long address, int port)
IPEndPoint(IPAddress address, int port)
Sử dụng C# socket
Hạt nhân của namespace System.Net.Sockets là lớp Socket. Nó cung cấp cho trình quản lý C# đoạn mã thực thi của Winsock API.
Socket(AddressFamily af, SocketType st, ProtocolType pt)
AddressFamily để định nghĩa kiểu mạng.
SocketType để định nghĩa kiểu dữ liệu của kết nối.
ProtocolType định nghĩa giao thức mạng
Lập trình với C# Socket Helper Classes
.NET Framework hỗ trợ giao diện socket nó cũng cung cấp một giao diện đơn giản hơn giúp cho việc lập trình mạng trở nên dễ dàng hơn. Có 3 lớp đối tượng được sử dụng cho việc lập trình mạng với giao diện mới này là:
TcpClient
TcpListener
UdpClient
Mỗi lớp được thiết kế để hỗ trợ một socket đặc biệt phục vụ cho một chức năng của chương trình và giao diện lập trình trở nên đơn giản hơn cho các chức năng đó. Rõ ràng, lớp TcpClient và TcpListener được sử dụng cho việc tạo các chương trình TCP client và server; lớp UdpClient được sử dụng để tạo các chương trình UDP.
Tcp Client
Những cách của lớp TcpClient được sử dụng để tạo những chương trình network client theo mô hình hướng kết nối.
+Sử dụng cách Connect()
+Sử dụng EndPoint
+ Kết nối trực tiếp không cần sử dụng cách Connect()
cách GetStream() được sử dụng để tạo ra một đối tượng NetworkStream cho phép bạn gửi và nhận các byte trên socket. Khi bạn có một thực thể NetworkStream cho socket, nó là một sự tách biệt để sử dụng dòng dữ liệu chuẩn để thông qua các cách Read() và Write() để di chuyển dữ liệu vào và ra trên một socket:
TcpListener
Lớp TcpClient đơn giản là một client socket dành cho chương trình Client, lớp TcpListener đơn giản là dành cho chương trình server (một server socket); Những constructors của lớp này cũng đơn giản tương tự. Có 3 constructor có khuôn dạng như sau:
TcpListener(int port) nối kết tới một cổng cục bộ
TcpListener(IPEndPoint ie) kết nối tới một EndPoint cục bộ
TcpListener(IPAddress addr, int port) kết nối tới một IPAddress và cổng cục bộ
Ba khuôn dạng trên cho phép bạn tạo ra các đối tượng TcpListener. Khi một đối tượng đã được tạo, bạn có thể bắt đầu lắng nghe cho kết nối mới bằng cách sử dụng cách Start().
UdpClient
Đối với những ứng dụng yêu cầu một socket không hướng nối, lớp UdpClient cung cấp một giao diện đơn giản cho UDP sockets. Chúng ta đều biết rằng UDP là một giao thức không kết nối, do đó nó không giống như ứng dụng client – server, chỉ có những UDP socket đợi để truyền dữ liệu. Chúng ta không cần kết nối UDP socket tới một địa chỉ đặc biệt và chờ nhận dữ liệu.
Lập trình với Thread
Khi xây dựng các ứng dụng Server ta luôn muốn nó phải đáp ứng được cho nhiều Client, do đó mỗi ứng dụng Server cần có nhiều SocketClient và chúng ta sẽ phải thực hiện chúng đồng thời. Nhưng cách Receive() trên mỗi SocketClient sẽ rơi vào trạng thái chờ đợi khi không có dữ liệu trên kết nối mà nó quản lý và vì vậy khi một kết nối đang được xử lý không có dữ liệu các kết nối khác sẽ bị khóa. Để giải quyết vấn đề này C# cung cấp công cụ lập trình Thread.
Lớp .NetFramework's ProcessThread.
Lớp .NET ProcessThread trong namespace System.Diagnostics cho phép bạn truy nhập các thread trong phạm vi một tiến trình từ chương trình C# của bạn. Lớp ProcessThread bao gồm nhiều thuộc tính và cách được sử dụng để đạt được thông tin về các thread trong một tiến trình. thi.
PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
Cấu trúc chung của chương trình.
Chương trình chat canera chia làm hai module chính. Một là module Server, hai là moduel Client. Module Server có nhiệm vụ lắng nghe các kết nối từ Client thông qua cổng. Đồng thời Server phải gửi danh sách các Client đã kết nối đến Server cho các Client có yêu cầu. Còn module Client thì có nhiệm vụ kết nối đến Server thông qua địa chỉ IP của Server. Khi kết nối thành công thì các Client có thể yêu cầu Server gửi danh sách các Client kết nối đến cho nó. Lúc đó các Client có thể chat camera với nhau.
Module Server và module Client gồm các modulesau :
Module Server :
- ListenRequest: Lắng nghe kết nối đến Server.
- SendListUser : Gửi danh sách các Client kết nối đến Server.
Module Client :
- DisplayCamera: Hiển thị hình ảnh
- ConnectToServer: Kết nối đến Server
- SendCamera: Truyền camera
Phân tích và thiết kế hệ thống
Thiết kế các module
Module 1 (ListenRequest)
Quản lý và lắng nghe các yêu cầu từ Client (Server) để tạo các kết nối từ Client tới Server và tạo ra các kết nối riêng cho các Client có thể trao đổi với nhau. Module này cho phép ta kết nối 2 máy tính lại với nhau thông qua một địa chỉ cổng (Port) hay thông qua địa chỉ IP.
Module 2 (ConnectToServer)
Module này có nhiệm vụ thực hiện yêu cầu kết nối (Client) để thiết lập kết nối từ Client tới Server. Khi kết nối được thành lập ta có thể tiến hành trao đổi thông tin giữa hai máy tính.
Module 3 (SendListUser)
Module 4 có nhiệm vụ gửi danh sách các Client đang kết nối đến Server cho các Client có yêu cầu. Tạo kết nối riêng giữa các Client với Client. Đây chính là cách để các Client có thể chat camera với nhau.
Module 4 (SendCamera)
Khi các Client cùng kết nối đến Server. Lúc này các Client có thể truyền và nhận camera với nhau. Trong khi hai Client đang chat camera mà một trong hai Client có một Client thoát khỏi kết nối đến Server thì cũng kết thúc quá trình truyền nhận camera.
Module 5 (DisplayCamera)
Module trên thì module 6 có nhiệm vụ nhận thông tin từ kết nối riêng và hiển thị nó lên màn hình.
Phân tích các lớp
a. Mô tả lớp đối tượng ListenRequest
ListenRequest
Properties:
Socke...
Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status