VB2008을 사용하여 통신 할 필요가있는 2 대의 컴퓨터에 2 개의 응용 프로그램이 있습니다. 나는 명명 된 파이프를 설치하고 지금까지 작동하고 있습니다. 나는이 두 프로그램 사이에서 앞뒤로 문자열을 보낼 수있다.VB.net에서 명명 된 파이프를 통해 클래스를 보내는 방법
이제 클래스 나 객체를 보낼 수 있어야합니다. 필자는 직렬화가 갈 길이 멀다고 읽었습니다. 그래서, 클라이언트에서, 내가 가진 : (원격 컴퓨터) 서버 측에
Public Class cTest
Dim Var1 As Boolean
Dim Var2 As String = "a test"
Dim Var3 As New Collections.ArrayList
Public Sub AddItem(ByVal Item As String)
Var3.Add(Item)
End Sub
End Class
Private Sub Button8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button8.Click
Dim oClasse As New cTest
oClasse.AddItem("StarWars")
oClasse.AddItem("StarTrek")
oPipe.SendToPipe(oClasse)
End Sub
End Class
Public Sub SendToPipe(ByVal test As cTest)
Dim xmlTest As New Xml.Serialization.XmlSerializer(GetType(cTest))
xmlTest.Serialize(pipeClient, test)
End Sub
:
Public Function ReadString() As String
Dim len As Integer = 0
len = CType(ioStream.ReadByte(), Integer) * 256
len += CType(ioStream.ReadByte(), Integer)
Try
Dim serializer As New Xml.Serialization.XmlSerializer(GetType(cTest))
Dim Test As cTest
Test = CType(serializer.Deserialize(ioStream), cTest)
Catch ex As Exception
End Try
End Function
serializer.Deserialize는 XML 형식이 올바르지 않습니다라고 예외를 throw합니다.
내가 뭘 잘못하고있어?
시간 내 주셔서 감사합니다 내가 당신이라면