Go Back   Cựu Học Sinh Lê Quý Đôn - Long An > :: Góc Học Tập :: > Tin học > Học lập trình

Học lập trình Pascal , C+ , C++ , VB

Serialize object trong C# và C++

Serialize object trong C# và C++

this thread has 9 replies and has been viewed 13812 times

Gởi Ðề Tài Mới Trả lời
 
Ðiều Chỉnh Xếp Bài
Old 03-12-2008, 10:36 AM   #1
Hồ sơ
fantomas_la
Senior Member
 
fantomas_la's Avatar
 
Tham gia ngày: Sep 2006
Số bài viết: 218
Tiền: 25
Thanks: 51
Thanked 55 Times in 42 Posts
fantomas_la is on a distinguished road
Default Serialize object trong C# và C++

Xin chào mọi người, hiện tại em đang gặp phải một thắc mắc nên pót lên nhờ mọi người cho ý kiến.
Trong MFC có thể dùng CObject và CArchive
[Đăng nhập để xem liên kết. ]

Trong C# có thể dung ISerializable
[Đăng nhập để xem liên kết. ]

Đó là sử dụng riêng rẽ cho từng môi trường. Nhưng giả sử muốn truyền Object nào đó qua network (dùng socket chẳng hạn) thì liệu hai method serialize trên có hiểu đựoc hay không?
Xin mọi người cho ý kiến với. Em đang cần tìm hiểu cái vấn đề này.

PS: Serialize ra XML rồi truyền qua Socket có khả thi không?
Em đang cần một phương thức chuẩn (Microsoft support càng tốt), chứ không phải user defined đâu.
__________________
Công ty thiết bị Bảo Hộ lao Động
http://www.giaquangsafety.com/
fantomas_la is offline   Trả Lời Với Trích Dẫn
Old 03-12-2008, 11:10 AM   #2
Hồ sơ
myhanh
 
myhanh's Avatar
 
Tham gia ngày: Dec 2004
Cư ngụ: Love Planet
Tuổi: 44
Số bài viết: 7,404
Tiền: 0
Thanks: 2,122
Thanked 5,472 Times in 2,040 Posts
myhanh is on a distinguished road
Default Ðề: Serialize object trong C# và C++

Truyền qua mạng? Vậy phụ thuộc vào giao thức em truyền! Nếu chỉ dùng TCP/IP bình thường không dùng cái chi nữa vậy phải tự em định nghĩa rồi.
__________________
Necessity is the mother of in(ter)vention.
Speak softly & carry a big stick.
My Technical Blog
myhanh is offline   Trả Lời Với Trích Dẫn
Old 03-12-2008, 11:15 AM   #3
Hồ sơ
92A01
Administrators
 
92A01's Avatar
 
Tham gia ngày: Nov 2004
Tuổi: 47
Số bài viết: 2,717
Tiền: 8539
Thanks: 390
Thanked 1,256 Times in 644 Posts
92A01 is an unknown quantity at this point
Default Ðề: Serialize object trong C# và C++

Microsoft có công nghệ Dotnet Remoting. Em có thể search trên mạng. Đây là chuẩn của Microsoft dùng để gọi phương thức từ xa (giống như RMI hay CORBA).
__________________
...Từ độ mang gươm đi mở cõi.
Trời Nam thương nhớ đất Thăng Long...
92A01 is offline   Trả Lời Với Trích Dẫn
Old 03-12-2008, 11:19 AM   #4
Hồ sơ
92A01
Administrators
 
92A01's Avatar
 
Tham gia ngày: Nov 2004
Tuổi: 47
Số bài viết: 2,717
Tiền: 8539
Thanks: 390
Thanked 1,256 Times in 644 Posts
92A01 is an unknown quantity at this point
Default Ðề: Serialize object trong C# và C++

Em cũng có thể sử dụng web service, SOAP.
__________________
...Từ độ mang gươm đi mở cõi.
Trời Nam thương nhớ đất Thăng Long...
92A01 is offline   Trả Lời Với Trích Dẫn
Old 03-12-2008, 01:51 PM   #5
Hồ sơ
fantomas_la
Senior Member
 
fantomas_la's Avatar
 
Tham gia ngày: Sep 2006
Số bài viết: 218
Tiền: 25
Thanks: 51
Thanked 55 Times in 42 Posts
fantomas_la is on a distinguished road
Default Ðề: Serialize object trong C# và C++

Trích:
Nguyên văn bởi myhanh View Post
Truyền qua mạng? Vậy phụ thuộc vào giao thức em truyền! Nếu chỉ dùng TCP/IP bình thường không dùng cái chi nữa vậy phải tự em định nghĩa rồi.
Em chỉ dùng Socket bình thường thôi. Dữ liệu truyền nhận là bytestream. Ý em ở đây là có sự khác biệt nào không giữa khái niệm Serialization của C++(Dùng MFC thông qua CArchive) va Serialization của C#. C++ và C# cũng của Microsoft ấy mà, không biết có chuẩn hay không?

Có thể minh họa như thế này:
Có Object A được định nghĩa ở cả hai platform C++ và C#
B1: C++ program Serialize Object A to bytestream ()
B2: Send chuỗi byte đó qua Network
B3: C# receive chuỗi byte. Liệu có deserialize được object A hay không?
__________________
Công ty thiết bị Bảo Hộ lao Động
http://www.giaquangsafety.com/
fantomas_la is offline   Trả Lời Với Trích Dẫn
Old 03-12-2008, 01:52 PM   #6
Hồ sơ
fantomas_la
Senior Member
 
fantomas_la's Avatar
 
Tham gia ngày: Sep 2006
Số bài viết: 218
Tiền: 25
Thanks: 51
Thanked 55 Times in 42 Posts
fantomas_la is on a distinguished road
Default Ðề: Serialize object trong C# và C++

Trích:
Nguyên văn bởi 92A01 View Post
Em cũng có thể sử dụng web service, SOAP.
Em được yêu cầu sử dụng socket thuần thui anh. thế mới khổ!!!!
__________________
Công ty thiết bị Bảo Hộ lao Động
http://www.giaquangsafety.com/
fantomas_la is offline   Trả Lời Với Trích Dẫn
Old 03-12-2008, 02:01 PM   #7
Hồ sơ
92A01
Administrators
 
92A01's Avatar
 
Tham gia ngày: Nov 2004
Tuổi: 47
Số bài viết: 2,717
Tiền: 8539
Thanks: 390
Thanked 1,256 Times in 644 Posts
92A01 is an unknown quantity at this point
Default Ðề: Serialize object trong C# và C++

nếu em lập trình socket thì không có rồi. Có sẵn không dùng mà lại phải tự làm?
__________________
...Từ độ mang gươm đi mở cõi.
Trời Nam thương nhớ đất Thăng Long...
92A01 is offline   Trả Lời Với Trích Dẫn
Old 03-12-2008, 02:07 PM   #8
Hồ sơ
fantomas_la
Senior Member
 
fantomas_la's Avatar
 
Tham gia ngày: Sep 2006
Số bài viết: 218
Tiền: 25
Thanks: 51
Thanked 55 Times in 42 Posts
fantomas_la is on a distinguished road
Default Ðề: Serialize object trong C# và C++

Cách đây vài hôm em co research được cái này Protocol Buffers. Cái này là của Google đó. Cái này cũng hay lắm, em đã nghiên cứu và cũng đã viết được sample theo như yêu cầu ở trên rùi.
Vấn đề là ở chỗ việc việc sử dụng nó hơi phức tạp + Open source nữa nên khách hàng họ không chịu.

Mọi người có thể tham khảo tại địa chỉ bên dưới.
[Đăng nhập để xem liên kết. ]
__________________
Công ty thiết bị Bảo Hộ lao Động
http://www.giaquangsafety.com/
fantomas_la is offline   Trả Lời Với Trích Dẫn
Old 03-12-2008, 02:10 PM   #9
Hồ sơ
fantomas_la
Senior Member
 
fantomas_la's Avatar
 
Tham gia ngày: Sep 2006
Số bài viết: 218
Tiền: 25
Thanks: 51
Thanked 55 Times in 42 Posts
fantomas_la is on a distinguished road
Default Ðề: Serialize object trong C# và C++

Trích:
Nguyên văn bởi 92A01 View Post
nếu em lập trình socket thì không có rồi. Có sẵn không dùng mà lại phải tự làm?
Vấn đề là ở chỗ khách hàng sẽ viết bên C++ còn tụi em sẽ viết C#. Mình muốn sử dụng cái gì thì bên nó phải đồng ý mới được. Cái C++ program nó đã có sãn nguyên hệ thống rùi, giờ chỉ chỉnh sửa phần communicating thôi, chứ không phải viết mới hoàn toàn.
__________________
Công ty thiết bị Bảo Hộ lao Động
http://www.giaquangsafety.com/
fantomas_la is offline   Trả Lời Với Trích Dẫn
Old 03-12-2008, 02:26 PM   #10
Hồ sơ
myhanh
 
myhanh's Avatar
 
Tham gia ngày: Dec 2004
Cư ngụ: Love Planet
Tuổi: 44
Số bài viết: 7,404
Tiền: 0
Thanks: 2,122
Thanked 5,472 Times in 2,040 Posts
myhanh is on a distinguished road
Default Ðề: Serialize object trong C# và C++

Tốt nhất mình định nghĩa giao thức
Sử dụng XML là tốt nhất.
A gửi cho B 1 văn bản XML theo DTD đã thống nhất.
B nhận được rồi parse XML để lấy thông tin.
__________________
Necessity is the mother of in(ter)vention.
Speak softly & carry a big stick.
My Technical Blog
myhanh is offline   Trả Lời Với Trích Dẫn
Trả lời



Quyền Sử Dụng Ở Diễn Ðàn
Bạn không được quyền gởi bài
Bạn không được quyền gởi trả lời
Bạn không được quyền gởi kèm file
Bạn không được quyền sửa bài

vB code đang Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt
Chuyển đến

Chủ đề tương tự
Ðề tài Người Gởi Chuyên mục Trả lời Bài mới gởi
Rối loạn giấc ngủ peanux Chia sẻ kinh nghiệm 0 11-03-2008 08:45 AM
Chúng Ta trong Thế giới phẳng Gem ..:: Thảo luận nghiêm túc ::.. 2 09-09-2007 04:44 PM
Ufo VÀ SỰ SỐng NgoÀi TrÁi ĐẤt LeGiang Thiên văn học 0 25-05-2007 11:13 AM
..::Cánh đồng Bất Tận::.. nobipotter ..:: CLB Văn Thơ ::.. 8 01-01-1970 07:00 AM


Website sử dụng phần mềm vBulletin phiên bản 3.6.8
do Công ty TNHH Jelsoft giữ bản quyền từ 2000 - 2024.
Múi giờ GMT +7. Hiện tại là 04:51 AM.

Hội CHS Lê Quý Đôn-Long An giữ bản quyền nội dung của website này

Tự động[F9]TELEX VNI VIQR VIQR* TắtKiểm chính tảDấu cũ
phan mem quan ly ban hang | thuê vps