[Mono-dev] System.Runtime.Serialization.SerializationException

Marc Van Laer marc.vanlaer at appgenie.com
Fri Apr 18 06:53:45 EDT 2008


Hi,

I have the following:

A server application running either on XP, Vista  .Net 2.0 or SLED 10.3 mono 1.9.
A Client application running eiter on XP, Vista .Net 2.0 or SLED 10.3 mono 1.9  

I am using Remoting Binary channels tcp.

Everythings works fine between XP and Vista

If the Server piece is on mono the client gets the following error on XP or Vista when connecting to the server piece:

-------------

System.Runtime.Serialization.SerializationException: Field "_key" not found in class System.Collections.DictionaryEntry

Server stack trace: 
  at System.Runtime.Serialization.Formatters.Binary.ObjectReader.ReadTypeMetadata (System.IO.BinaryReader reader, Boolean isRuntimeObject, Boolean hasTypeInfo) [0x00000] 
  at System.Runtime.Serialization.Formatters.Binary.ObjectReader.ReadObjectInstance (System.IO.BinaryReader reader, Boolean isRuntimeObject, Boolean hasTypeInfo, System.Int64& objectId, System.Object& value, System.Runtime.Serialization.SerializationInfo& info) [0x00000] 
  at System.Runtime.Serialization.Formatters.Binary.ObjectReader.ReadObject (BinaryElement element, System.IO.BinaryReader reader, System.Int64& objectId, System.Object& value, System.Runtime.Serialization.SerializationInfo& info) [0x00000] 
  at System.Runtime.Serialization.Formatters.Binary.ObjectReader.ReadValue (System.IO.BinaryReader reader, System.Object parentObject, Int64 parentObjectId, System.Runtime.Serialization.SeriaA first chance exception of type 'System.Runtime.Serialization.SerializationException' occurred in mscorlib.dll
lizationInfo info, System.Type valueType, System.String fieldName, System.Reflection.MemberInfo memberInfo, System.Int32[] indices) [0x00000] 
  at System.Runtime.Serialization.Formatters.Binary.ObjectReader.ReadGenericArray (System.IO.BinaryReader reader, System.Int64& objectId, System.Object& val) [0x00000] 
  at System.Runtime.Serialization.Formatters.Binary.ObjectReader.ReadObject (BinaryElement element, System.IO.BinaryReader reader, System.Int64& objectId, System.Object& value, System.Runtime.Serialization.SerializationInfo& info) [0x00000] 
  at System.Runtime.Serialization.Formatters.Binary.ObjectReader.ReadNextObject (System.IO.BinaryReader reader) [0x00000] 
  at System.Runtime.Serialization.Formatters.Binary.ObjectReader.ReadObjectGraph (System.IO.BinaryReader reader, Boolean readHeaders, System.Object& result, System.Runtime.Remoting.Messaging.Header[]& headers) [0x00000] 
  at System.Runtime.Serialization.Formatters.Binary.MessageFormatter.ReadMethodCall (System.IO.BinaryReader reader, Boolean hasHeaders, System.Runtime.Remoting.Messaging.HeaderHandler headerHandler, System.Runtime.Serialization.Formatters.Binary.BinaryFormatter formatter) [0x00000] 
  at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.NoCheckDeserialize (System.IO.Stream serializationStream, System.Runtime.Remoting.Messaging.HeaderHandler handler) [0x00000] 
  at System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Deserialize (System.IO.Stream serializationStream, System.Runtime.Remoting.Messaging.HeaderHandler handler) [0x00000] 
  at System.Runtime.Remoting.Channels.BinaryServerFormatterSink.ProcessMessage (IServerChannelSinkStack sinkStack, IMessage requestMsg, ITransportHeaders requestHeaders, System.IO.Stream requestStream, IMessage& responseMsg, ITransportHeaders& responseHeaders, System.IO.Stream& responseStream) [0x00000] 

----------------

if the client piece is run on mono I get the following error when connecting to de server piece on XP or Vista

----------------
Unhandled Exception: System.NotSupportedException: Collection is read-only
  at System.Collections.Specialized.NameValueCollection.Set (System.String name, System.String value) [0x00000]
  at System.Collections.Specialized.NameValueCollection.set_Item (System.String name, System.String value) [0x00000]
  at AppGenie.Integrity.ProxyTerminal+Terminal.Connect () [0x00000]
  at (wrapper remoting-invoke-with-check) Terminal:Connect ()
  at Client.Console.button3_Click (System.Object sender, System.EventArgs e) [0x00000]
  at System.Windows.Forms.Control.OnClick (System.EventArgs e) [0x00000]
  at System.Windows.Forms.Button.OnClick (System.EventArgs e) [0x00000]
  at System.Windows.Forms.ButtonBase.OnMouseUp (System.Windows.Forms.MouseEventArgs mevent) [0x00000]
  at System.Windows.Forms.Button.OnMouseUp (System.Windows.Forms.MouseEventArgs mevent) [0x00000]
  at System.Windows.Forms.Control.WmLButtonUp (System.Windows.Forms.Message& m) [0x00000]
  at System.Windows.Forms.Control.WndProc (System.Windows.Forms.Message& m) [0x00000]
  at System.Windows.Forms.ButtonBase.WndProc (System.Windows.Forms.Message& m) [0x00000]
  at System.Windows.Forms.Button.WndProc (System.Windows.Forms.Message& m) [0x00000]
  at System.Windows.Forms.Control+ControlWindowTarget.OnMessage (System.Windows.Forms.Message& m) [0x00000]
  at System.Windows.Forms.Control+ControlNativeWindow.WndProc (System.Windows.Forms.Message& m) [0x00000]
  at System.Windows.Forms.NativeWindow.WndProc (IntPtr hWnd, Msg msg, IntPtr wParam, IntPtr lParam) [0x00000]
  at System.Windows.Forms.XplatUIX11.DispatchMessage (System.Windows.Forms.MSG& msg) [0x00000]
  at System.Windows.Forms.XplatUI.DispatchMessage (System.Windows.Forms.MSG& msg) [0x00000]
  at System.Windows.Forms.Application.RunLoop (Boolean Modal, System.Windows.Forms.ApplicationContext context) [0x00000]
  at System.Windows.Forms.Application.Run (System.Windows.Forms.ApplicationContext context) [0x00000]
  at System.Windows.Forms.Application.Run (System.Windows.Forms.Form mainForm) [0x00000]
  at Client.Program.Main () [0x00000]
linux-1x7v:~/Desktop/HydraPlus2/Client/bin/Debug #


----------------

Anybody any ideas?

regards.

Marc



More information about the Mono-devel-list mailing list