G
Guest
I have found that .NET applications made up from multiple assemblies do not run from file servers if Microsoft Client Service for NetWare is used to access the file server. When you try to do so, you invariably get a System.IO.FileLoadException with an error message such as "Can not access file <assemblyName> because it is being used by another process." where <assemblyName> is the name of the second assembly loaded for your application.
The problem can be reproduced as such:
1. Create a simple .NET app with at least two assemblies. For example, make a .exe windows app as your first assembly, and in it have a reference to a class that resides in a separate class library assembly. In your .exe startup code, simply instantiate a class from the class library (so that the framework will attempt to load the class library .dll at runtime).
2. Copy the resulting .exe and .dll to any location on a NetWare server.
3. Using a workstation that connects to the NetWare server via Client Service for NetWare, execute the .exe.
Curiously, if you use Novell's client to access the server instead of the Microsoft one, then everything works fine. However, in many cases our customers must use the Microsoft client.
Has anybody else experienced this problem and/or found a solution to it?
The problem can be reproduced as such:
1. Create a simple .NET app with at least two assemblies. For example, make a .exe windows app as your first assembly, and in it have a reference to a class that resides in a separate class library assembly. In your .exe startup code, simply instantiate a class from the class library (so that the framework will attempt to load the class library .dll at runtime).
2. Copy the resulting .exe and .dll to any location on a NetWare server.
3. Using a workstation that connects to the NetWare server via Client Service for NetWare, execute the .exe.
Curiously, if you use Novell's client to access the server instead of the Microsoft one, then everything works fine. However, in many cases our customers must use the Microsoft client.
Has anybody else experienced this problem and/or found a solution to it?