Đề tài Xây dựng ứng dụng phân tán dùng .NET Remoting & Windows Service

-Remotinglà kỹthuật tách cácthành phầnxử lýcủaứngdụngkhỏicácràngbuộcvịtrívậtlý -Cóthểđịnhvịthànhphầnxửlý trêncùngmáy, trên cùnghệthống mạng,trên cácmáynằm trêncáchệthốngmạngkhác -Remotinggiúpviệcgọithực hiệncácphương thức vàtruyền giátrị giữacáctiến trình thực hiệnđơngiản -Remotingđượcxâydựngtrên nềnCommon LanguageRuntime(CLR) vàđượcsửdụngđể xâydựngcácứngdụngphântán mộtcách hiệuquả

pdf77 trang | Chia sẻ: tuandn | Lượt xem: 2309 | Lượt tải: 5download
Bạn đang xem trước 20 trang tài liệu Đề tài Xây dựng ứng dụng phân tán dùng .NET Remoting & Windows Service, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
11 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Xây dựng ứng dụng phân tán dùng .NET Remoting & Windows Service Giáo viên hướng dẫn: TS.Hồ Bảo Quốc Trần Thị Kim Phụng Võ Ngọc Tân Nguyễn Bá Quang Lâm Nhóm thực hiện: Đề tài: 22 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC NỘI DUNG Phần 1: Giới thiệu .NET Remoting Phần 2: Các bước xây dựng một ứng dụng phân tán dùng .NET Remoting Phần 3: Windows Service 33 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC NỘI DUNG Phần 1: Giới thiệu .NET Remoting I. Khái niệm .NET Remoting II. Kiến trúc .NET Remoting III. Một số khái niệm IV. Cơ chế truyền đối tượng V. Các loại Remote Object 44 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌCI. KHÁI NIỆM .NET REMOTING -Remoting là kỹ thuật cho phép ứng dụng gọi các đối tượng khai báo ở những tiến trình trên máy tính khác thông qua hệ thống mạng 55 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC -Remoting là kỹ thuật tách các thành phần xử lý của ứng dụng khỏi các ràng buộc vị trí vật lý -Có thể định vị thành phần xử lý trên cùng máy, trên cùng hệ thống mạng, trên các máy nằm trên các hệ thống mạng khác -Remoting giúp việc gọi thực hiện các phương thức và truyền giá trị giữa các tiến trình thực hiện đơn giản -Remoting được xây dựng trên nền Common Language Runtime (CLR) và được sử dụng để xây dựng các ứng dụng phân tán một cách hiệu quả I. KHÁI NIỆM .NET REMOTING 66 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌCII. KIẾN TRÚC .NET REMOTING 77 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌCTrong đó: -Client Object: đối tượng cần giao tiếp với Remote Object -Server (Remote) Object: nhận yêu cầu/xử lý và trả kết quả cho Client Object -Proxy: miêu tả Client Object trong Client Application, sẽ xúc tiến việc gọi của Client và trả lại kết quả của Server -Formatter: định dạng dữ liệu (SOAP, Binary,…) -Channel: kênh truyền dữ liệu (TCP, HTTP,…) -Dispatcher: tiến trình quản lý danh sách các xử lý được gởi đến Sever (Remote) Object 88 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌCIII. MỘT SỐ CÁC KHÁI NIỆM 1. Local Object và Remote Object 2. Formatters 3. Channel 4. Đăng ký Channel 99 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌCIII. MỘT SỐ CÁC KHÁI NIỆM 1. Local Object và Remote Object -Local Object là đối tượng trong phạm vi cùng application domain -Đối tượng gọi là Remote Object nếu nó được đặt bên trong một application domain khác -Remote Object kế thừa từ class có tên MarshalByRefObject 1010 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌCIII. MỘT SỐ CÁC KHÁI NIỆM 2. Formatters -Formatters chịu trách nhiệm mô tả và mã hóa dữ liệu của đối tượng để có thể gởi đi qua mạng (serialization) -SOAP formatter sử dụng định dạng của XML để ghi thông tin theo cách đã được chuẩn hoá màứng dụng có thể hiểu được -Binary formatter tạo một binary data stream được hiểu bởi các trình ứng dụng .NET khác 1111 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌCIII. MỘT SỐ CÁC KHÁI NIỆM 3. Channel -Các Channel được dùng để thiết lập việc truyền thông giữa .NET Server và .NET Client -Là lớp của namespace có tên System.Runtime.Remoting -Là đối tượng vận chuyển các thông điệp và dữ liệu từ tiến trình này đến tiến trình khác 1212 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌCIII. MỘT SỐ CÁC KHÁI NIỆM 3. Channel -Một channel được đăng ký bởi ứng dụng remote server có thể lắng nghe điểm cuối (endpoint), chờ một thông điệp đến, và gởi đáp trả về sau đó cho ứng dụng client -Channel Protocol và Port number phải phù hợp cho sự truyền thông giữa client và server được thành công 1313 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌCIII. MỘT SỐ CÁC KHÁI NIỆM 3. Channel -Có ba loại: HTTP, TCP và IPC •TCP: chuyển dữ liệu qua mạng theo dạng nhị phân bằng giao thức TCP để xử lý thông điệp từ remote objects •HTTP: chuyển dữ liệu qua mạng theo định dạng XMLbằng giao thức SOAP •IPC (interprocess communication): cung cấp thêm các lựa chọn khi các xử lý xảy ra trong cùng một máy 1414 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌCIII. MỘT SỐ CÁC KHÁI NIỆM 4. Đăng ký Channel -Ứng dụng server phải đăng ký một channel trước khi các client có thể liên lạc nó -Khi đăng ký một TCP channel hoặc một HTTP channel, phải gán một Port number -Các Port numbers từ 0 cho đến 1023 được dành riêng cho các ứng dụng chung -Có thể chỉ định Port number khác (lên tới 65,535) 1515 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Marshaling là quá trình chuẩn bị một đối tượng để di chuyển qua một ranh giới nào đó. Marshaling có thể được tiến hành theo 2 cách: 1. Marshal-by-Value 2. Marshal-by-Reference IV. CƠ CHẾ TRUYỀN ĐỐI TƯỢNG 1616 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC 1. Marshal-by-Value IV. CƠ CHẾ TRUYỀN ĐỐI TƯỢNG -Khi một đối tượng marshal-by-value được gởi đi giữa các thành phần, một bản sao chép toàn bộ đối tượng sẽ được “tuần tự hóa” (serialized) và được gởi đi thông qua Remoting Channel tới bên gọi -Đối tượng sau đó được tái tạo bên trong tiến trình gọi, nhờ vậy bên gọi có thể sử dụng được đối tượng này 1717 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC 1. Marshal-by-Value IV. CƠ CHẾ TRUYỀN ĐỐI TƯỢNG -Tất cả các lời gọi tiếp theo trên đối tượng được thực hiện bên tiến trình bên gọi -Việc sao chép và tái tạo toàn bộ đối tượng có thể tốn một ít thời gian, làm chậm khi lần đầu tiên gọi đối tượng, đôi khi lại có hiệu quả hơn việc tạo ra các “chuyến đi vòng qua vòng lại” giữa client và server khi muốn có nhiều lời gọi tới đối tượng 1818 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC 2. Marshal-by-Reference IV. CƠ CHẾ TRUYỀN ĐỐI TƯỢNG -Khi một đối tượng marshal-by-reference được chuyển giữa các thành phần, một đối tượng proxy được tạo trong tiến trình gọi -Đối tượng này là một thay thế (stand-in) cho đối tượng remote, nó hiện diện ở client giống như là đối tượng ở xa và cho phép mã lệnh client tạo các lời gọi phương thức như thể là nó đang gọi một đối tượng cục bộ 1919 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC 2. Marshal-by-Reference IV. CƠ CHẾ TRUYỀN ĐỐI TƯỢNG -Khi đối tượng gọi tạo nên các lời gọi phương thức trên đối tượng proxy, cơ sở hạ tầng .NET Remoting gởi các lời gọi này tới remote server -Sử dụng các đối tượng marshal-by-reference khi đối tượng phụ thuộc vào việc sử dụng nguồn tài nguyên 2020 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC 1. Single call object (Marshal-by-Value) -Các object này thực hiện một phương thức nhưng không làm thay đổi trạng thái của nó -Đối tượng chỉ sử dụng để chia sẻ dữ liệu cho một client và có nhiều đối tượng được tạo ra 2. Singleton object (Marshal-by-Reference) -Các object này được sử dụng phục vụ cho nhiều client và chúng có thể thay đổi trạng thái -Sử dụng khi muốn chia sẻ dữ liệu cho nhiều client khác nhau và có một đối tượng được tạo ra V. CÁC LOẠI REMOTE OBJECT 2121 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC NỘI DUNG Phần 2: Các bước xây dựng một ứng dụng phân tán dùng .NET Remoting 2222 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Xây dựng một ứng dụng phân tán Ví dụ xây dưng một ứng dụng cho phép người dùng nhập tên mình trên Client, Client sẽ kết nối đến Server để thực hiên một phương thức từ xa đã được định nghĩa trước. Kết quả trả về cho Client là chuỗi “Hello” và tên của người dùng. 2323 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Bước 1 : Xây dựng đối tượng Remoting (Class library) Xây dựng một ứng dụng phân tán 2424 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC + Chọn File\New\Project để tạo một Project mới. + Trong cửa sổ New Project chọn Class Library Xây dựng một ứng dụng phân tán 2525 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC + Đặt tên cho đơi tượng vừa tạo ra là MyRemoteClass + Lớp Class1 của chúng ta được thừa kế từ MarshalByRefObject + Định nghĩa một phương thức có tên là hello(string hoten) + Chọn Build Solution Xây dựng một ứng dụng phân tán 2626 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Xây dựng một ứng dụng phân tán 2727 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Bước 2 : Xây dựng Remote Server Application (Windows Application) Xây dựng một ứng dụng phân tán 2828 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC + Chọn File\New\Project để tạo một Project mới + Trong cửa sổ New Project chọn Windows Form Application, đặt tên là Server Xây dựng một ứng dụng phân tán 2929 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Xây dựng một ứng dụng phân tán 3030 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC + Thiết kế giao diện cho phép người dùng nhập vào số hiệu một cổng để khởi động Server Xây dựng một ứng dụng phân tán 3131 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Xây dựng một ứng dụng phân tán + Thêm các tham chiếu vào Project 3232 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC + Tham chiếu đến MyRemoteClass đã tạo Xây dựng một ứng dụng phân tán 3333 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC + Tham chiếu đến thành phần System.Runtime.Remoting Xây dựng một ứng dụng phân tán 3434 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC + Thêm các namespace cần thiết Xây dựng một ứng dụng phân tán 3535 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC + Đăng ký kênh truyền và đăng ký đối tượng remote + Chọn Build Solution Xây dựng một ứng dụng phân tán 3636 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Bước 3 : Xây dựng Client Application (Windows application) Xây dựng một ứng dụng phân tán 3737 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC + Các bước tạo Project (đặt tên là Client), thêm các tham chiếu, không gian tên tương tự với Project Server. + Thiết kế giao diện cho phép người dùng nhập tên máy tính, số hiệu cổng cần kết nối và tên người dùng Xây dựng một ứng dụng phân tán 3838 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC + Kết nối đến máy chủ thông qua tên, số hiệu cổng và giao thức Xây dựng một ứng dụng phân tán 3939 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC + Sử dụng phương thức từ xa và nhận kết quả trả về Xây dựng một ứng dụng phân tán 4040 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC NỘI DUNG Phần 3: Windows Services 4141 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Nội dung • Giới thiệu Windows Service • Các bước tạo Service Project 4242 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Giới thiệu Windows Service • Windows service là những tiến trình thực thi hậu cảnh, không hỗ trợ giao diện • Service có thể khởi động tự động khi khởi động máy tính ngay cả khi người dùng chưa đăng nhập  Service là cách lý tưởng để hiện thực một ứng dụng chạy hậu cảnh và không cần tương tác với người dùng 4343 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC 4444 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Các bước tạo Windows Service 4545 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Thiết lập thuộc tính 4646 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Các bước tạo Windows Service • Thêm các control vào project • Người lập trình cần hiện thực các phương thức OnStart và OnStop, đồng thời override bất kỳ phương thức nào mình cần • Build project • Thêm bộ installer cần thiết cho ứng dụng service vừa tạo 4747 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Tạo Install Project cho một Service • Không giống với các ứng dụng khác, người lập trình không thể đơn giản chỉ thực thi file service • Các Service phải được cài đặt trước khi thực thi • .NET Framework cung cấp lớp ServiceInstaller và ServiceProcessInstallercho mục đích này  Sử dụng ServiceInstaller để định nghĩa các thông tin: mô tả service, tên hiển thị, tên service và loại khởi động  Sử dụng ServiceProcessInstaller định nghĩa các thông tin tài khoản cho service 4848 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Tạo Installer Project: Bước 1 4949 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Tạo Installer Project: Bước 2, 3 • Thiết lập StartType property của ServiceInstaller  Automatic: service sẽ tự động khởi đông sau khi máy tính khởi đông  Manual (mặc định): người dùng phải khởi động service  Disabled: service không khởi đông và người dùng phải thay đổi thay đổi kiểu của StartType thành các giá trị ở trên • Thiết lập thuộc tính Description và DisplayName cho ServiceInstaller component 5050 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Tạo Installer Project: Bước 4 • Thiết lập thuộc tính Account cho ProjectInstaller của ServiceProcessInstaller để cho biết security context  LocalService: tài khoản là một user không có quyền ưu tiên. Sử dụng LocalService để tối thiểu hóa các vấn đề bảo mật  NetworkService: Cho phép service đăng nhập vào máy khác trên mạng  LocalSystem: Service thực thi với quyền gần như không giới hạn  User (mặc định): Hệ thống cần chứng thực username và password khi service được cài đặt • Có thể thiết lập Username và Password trong thuộc tính của lớp ServiceProcessInstaller 5151 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Tạo Installer Project: Bước 5,6 • Xác định startup project  Nhấp chuột phải lên Solution Explorer và sau đó chọn Properties.  Trong Project Designer, ở tab Application, chon service từ danh sách Startup Object • Build project 5252 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Triển khai dịch vụ - Deploy Service • Dùng InstallUtil  Deploy: InstallUtil yourservice.exe  Undeploy: InstallUtil /u yourservice.exe. 5353 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Các bước xây dựng một ứng dụng phân tán dùng remoting • Bước 1 :Xây dựng đối tượng Remoting(Class library) • Bước 2: Xây dựng Remote Server Application(Windows sevirce) • Bước 3 :Xây dựng Client Application(Windows application) 5454 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Bước 1 Xây dựng Remote Object • Tạo class library 5555 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC • Kế thừa lớp MarshalByRefObject Bước 1 Xây dựng Remote Object 5656 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC • Các phương thức public DataTable Doc_Bang(string tenthutuc,Tham_So[] pts ) { } Truyển vào tên của thủ tục nội tại và danh sách tham số, trả về một bảng dữ liệu Bước 1 Xây dựng Remote Object 5757 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC • Các phương thức • public object Thuc_hien_lenh(string tenthutuc, Tham_So[] pts) { } Truyển vào tên của thủ tục nội tại và danh sách tham số, trả về kết quả thực hiện TTNT Bước 1 Xây dựng Remote Object 5858 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC • Định nghĩa lớp tham số Bước 1 Xây dựng Remote Object 5959 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌCBước 2 :Tạo Remote Server Application • Tạo Windows Service 6060 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌCTạo Remote Server Application • Tham chiếu đến các thư viện 6161 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌCTạo Remote Server Application • Khai báo các biến 6262 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC • Trong phương thức OnStart() -khai báo đối tượng Formatters 6363 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Định nghĩa Channel 6464 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Đăng ký đối tương Remoting 6565 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Trong sự kiện OnStop :Xóa kênh đăng ký 6666 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Đăng ký RemotingService với hệ thống :Khởi động Visual Studio Command với administrator 6767 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Đăng ký RemotingService với hệ thống :Khởi động Visual Studio Command với administrator 6868 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Proxy Object • Proxy object biểu diễn cho remote object được tạo ra  Proxy object là một con trỏ đến remote object. Nó chứa các thông tin như vị trí server, kênh thông tin liên lạc được đăng ký • Một proxy object được tạo ra khi có một yêu cầu của client 6969 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC Bước 3 :Tạo Clien Remoting • Tạo ứng dụng Windows Application 7070 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌCBước 3 :Tạo Clien Remoting • Tham chiếu đến các thư viện using System.Runtime.Remoting; using System.Runtime.Remoting.Channels; using System.Runtime.Remoting.Channels.Tcp; using DaTaBase; using System.Data.SqlClient; 7171 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌCBước 3 :Tạo Clien Remoting • Khai báo các biến toàn cục 7272 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌCBước 3 :Tạo Clien Remoting • Xây dựng thủ tục tạo Remoting Object 7373 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌCBước 3 :Tạo Clien Remoting • Trong sự kiện Form_Load 7474 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌCBước 3 :Tạo Clien Remoting • Trong sự kiện Click của nút Ghi 7575 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌCBước 3 :Tạo Clien Remoting • Xây dựng thủ tục trong sqlserver 7676 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌCBước 3 :Tạo Clien Remoting • Xây dựng thủ tục trong sqlserver 7777 TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TP.HCM TRUNG TÂM TIN HỌC• Chân thành cảm ơn Thầy và các bạn