Greetings everybody,

(I apologize for the 2nd try, but first time it was
5h28 p.m. CST so maybe I'll have more success now)

I have a dll written in C# (managed code). This dll
executes calls to the remote server (hosted in aspnet_wp
process). When the dll is hosted in the managed exe
(ex: C# console application), everything works fine.

When activating the dll inproc as a COM server in the
legacy code (written in C++), and calling remote method
from the dll:

  - in marshaling (from the dll to remote server): everything works,

  - out marshaling (ex: return value): for user defined types
    remoting infrastructure throws an exception.

The exception for the soap formatter is:

System.Runtime.Serialization.SerializationException
"Parse Error, no assembly associated with Xml key
a2:http://schemas.microsoft.com/clr/nsassem/namespace1/
COMDLL%2C%20Version%3D1.0.0.0%2C%20Culture%3Dneutral%2C%20
PublicKeyToken%3Dnull STR"

The exception for the binary formatter is:

System.IO.FileNotFoundException
"File or assembly name COMDLL, or one of its dependencies,
was not found."

COMDLL is the name of dll, STR is the name  of the user defined
type that happens to be serializable structure.

My impression is that remoting infrastructure looks for some
metadata needed for marshaling and cannot find assembly containing
these metadata. I don't understand how it's possible. COMDLL
assembly contains the calling code, so is already loaded
and I have forced the load of dependant assemblies by
executing Assembly.GetAssembly .

What am I missing ?


Regards,

George

You can read messages from the DOTNET archive, unsubscribe from DOTNET, or
subscribe to other DevelopMentor lists at http://discuss.develop.com.

You can read messages from the DOTNET archive, unsubscribe from DOTNET, or
subscribe to other DevelopMentor lists at http://discuss.develop.com.

Reply via email to