VB.NET에서 패킷을 만들고 읽는 방법은 무엇입니까? 일종의 개체를 보내는 응용 프로그램을 만든 다음 클라이언트가 해당 개체의 직렬화를 해제하고 클라이언트가 정보를 보내고 서버가 apt 개체로 응답하는 양방향 통신을 설정하려고합니다 그것을 위해.VB.NET에서 패킷 구조를 만들고 읽는 방법은 무엇입니까?
답변
ProtoBuf-Net을 확인하십시오. 빠르고, 작고, 견고하고, 다소 쉽고 (희소 한 문서) 무료입니다. 많은 정보가, 여기가 at this link입니다. 10 줄 미만의 코드 (일부 클래스/속성 특성 포함)에서 파일이나 mem 스트림으로 어떤 것을 직렬화하고 NET 바이너리 시리얼 라이저보다 훨씬 작은 것을 출력합니다.
이 경우Try
Dim fs As New FileStream(mUserFile, FileMode.Create, FileAccess.Write)
Serializer.Serialize(fs, _Profiles)
fs.Close()
fs.Dispose()
Catch ex As Exception
MessageBox.Show("PBN Error", MsgTitle, MessageBoxButtons.OK, _
MessageBoxIcon.Exclamation)
End Try
, 5 개 또는 6 ListOf 항목의 컬렉션 (즉 중첩) 연재되었다, 그러나 그것은 쉽게 클래스되고 단지 수 : 기본 코드는 간단하다. 로딩/역 직렬화는 아주 쉽습니다.
내가 본 적이없는 방법이있을 수도 있지만, 설명하는 것과 같은 것을 시도 할 때 NET 바이너리 serializer는 생성 한 동일한 어셈블리 클래스 문화 유형으로 deserialize합니다. 이것은 프로젝트에 대한 독점적 인 출력을 만드는 데 적합하며 데이터 교환에 매우 좋지 않습니다. 출력도 거대했습니다 (NET에서 빈 사전을 3000 바이트로 직렬화하고 PBN은 300을 필요로 함). NET serializer가 좀 더 적합한 유일한 곳은 어셈블리가 난독 화 된 경우입니다. MS는 데이터를 가져 오는 방법을 알고 나머지 클래스와는 공유하지 않습니다. 그때조차도 프로세스에 몇 가지 단계 만 추가합니다.
PBN은 List Of, Dictionary 등의 모든 컬렉션 작업을 처리하지만 기본적으로 직사각형, 포인트 및 크기와 같은 작업을 수행하지 않습니다. 어제 Bitmap 용으로 작성한 변환기를 작동시키기위한 변환기를 작성하는 것이 어렵지 않습니다.
VB 개발자에게 가장 큰 단점은 모든 문서, 예제 및 talk/help가 C#에서 왔음을 의미합니다. VB 사용자의 눈을 밝게 해줄뿐 아니라 C# 전용 솔루션처럼 보입니다. 마찬가지로 정보 (유선 종류, 패킷 등)는 네트워크 데이터 교환 솔루션처럼 들리게합니다. 현실에서는 다양한 상황에서 VB와 마찬가지로 잘 작동합니다.
- 1. iPhone에서 SQLite 파일 구조를 읽는 방법은 무엇입니까?
- 2. Java에서 변수 구조를 읽는 방법은 무엇입니까?
- 3. Android에서 배열을 만들고 읽는 방법은 무엇입니까?
- 4. 은 네트워크 패킷 구조를 결정합니다.
- 5. 비동기 부스트에서 하나의 패킷 데이터를 읽는 방법은 무엇입니까?
- 6. for 루프를 사용하여 아래의 구조를 만들고 채우는 방법은 무엇입니까? ObjectiveC
- 7. 이 복잡한 C 데이터 구조를 만들고 관리하는 방법은 무엇입니까?
- 8. 바이트에서 패킷 ID를 읽는 중
- 9. vb.net에서 스캔 한 드라이버 라이센스 파일을 읽는 방법은 무엇입니까?
- 10. vb.net에서 Gmail의 첨부 파일이있는 이메일을 읽는 방법은 무엇입니까?
- 11. ExtJS4 상점이있는 JSON에서 CSV 데이터 구조를 읽는 방법은 무엇입니까?
- 12. Java를 사용하여 Java 파일 구조를 읽는 방법은 무엇입니까?
- 13. VB.NET에서 XML 요소를 읽는 방법
- 14. 계층 구조를 만드는 방법은 무엇입니까?
- 15. 패킷 손실을 디버그하는 방법은 무엇입니까?
- 16. 스택을 만들고 처리하는 방법은 무엇입니까?
- 17. SQL에 복잡한 좌석 구조를 만들고 구조화 하시겠습니까?
- 18. JSON 객체를 만들고 읽는 초보자
- 19. 웹 응답을 읽는 패킷 크기를 늘리는 방법
- 20. VB.NET에서 배치 파일 문제를 만들고 실행합니다.
- 21. VB.NET에서 컨트롤을 플로팅하는 방법은 무엇입니까?
- 22. VB.NET에서 ActionLink를 정의하는 방법은 무엇입니까?
- 23. VB.NET에서 RouteTable을 정의하는 방법은 무엇입니까?
- 24. DocumentFormat.OpenXml을 사용하여 Vb.Net에서 Excel을 만드는 방법은 무엇입니까?
- 25. 가짜 디렉토리 구조를 만들고 사용하려면 어떻게해야합니까?
- 26. Scapy에서 패킷 데이터를 올바르게 수정하는 방법은 무엇입니까?
- 27. Python으로 복잡한 사전 구조를 만드는 방법은 무엇입니까?
- 28. VB.NET에서 ActiveX.exe로 데이터를 전달하는 방법은 무엇입니까?
- 29. 그래프 구조를 직렬화하는 방법은 무엇입니까?
- 30. JNA에서 구조를 만드는 방법은 무엇입니까?