From: C. on
Hi,

I'm dealing with a legacy .Net 1.1 app with a /bin folder that
contains hundreds of assemblies. Most of those assemblies reference a
legacy AuthKeeper.dll assembly, version 1.2.0.0, which also resides in
that /bin folder (so no, it's not in the GAC).

I have an updated AuthKeeper.dll, version 2.0.0.0, where I've changed
the internals of many functions, but it is backwards compatible. What
I would like to do is to have all those legacy assemblies point to the
new AuthKeeper.dll without having to update all the references
manually.

I added AuthKeeper v. 2 to the GAC and then added this to the top of
my machine.config file for .Net 1.1:

<configSections>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="AuthKeeper"
publicKeyToken="6e158a01149e9e07" culture="neutral" />
<bindingRedirect oldVersion="1.0.0.0-1.9.9.9"
newVersion="2.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
**SNIP**

But after removing the legacy AuthKeeper.dll, it comes back with:

System.IO.FileNotFoundException: Could not load file or assembly
'AuthKeeper, Version=1.0.2804.14599, Culture=neutral,
PublicKeyToken=null' or one of its dependencies. The system cannot
find the file specified.

Can anyone think of how to do what I want to do?

Thanks!