-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ả
77 trang |
Chia sẻ: tuandn | Lượt xem: 2412 | Lượt tải: 5
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