Ich habe folgende Client-Anwendung und die entsprechende config
Datei:Warum hilft meine Codebasis App.Config .NET nicht, meine Assembly zu finden?
namespace Chapter9
{
class Program
{
static void Main(string[] args)
{
AppDomain.CurrentDomain.ExecuteAssembly("AssemblyPrivate.exe");
}
}
}
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<codeBase href="file://C:\Users\djpiter\Documents\Visual Studio 2008\Projects\70536\AssemblyPrivate\bin\Debug\AssemblyPrivate.exe"/>
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
Die AssemblyPrivate.exe
keinen öffentlichen Schlüssel besitzt, noch ist es im GAC befindet. Soweit ich weiß, sollte die Laufzeitumgebung die Datei app.config
analysieren, bevor sie nach einer Assembly im Client-Anwendungsverzeichnis sucht.
Die nicht behandelte Ausnahme (zur besseren Lesbarkeit umgebrochen) ist:
Unhandled Exception: System.IO.FileNotFoundException: Could not load file or assembly
'file:///C:\Users\djpiter\Documents\Visual Studio 2008\Projects\70536\Chapter9\bin\Debug\AssemblyPrivate.exe'
or one of its dependencies. The system cannot find the file specified.
Warum es funktioniert nicht? Ich brauche dynamische Bindung (nicht statisch).
Mit freundlichen Grüßen, PK
Was ist die Beziehung zwischen dem Weg des Haupt exe und die Montage (ist es in einem Unterverzeichnis)? – stevehipwell
Ja. Es befindet sich im Unterverzeichnis. – pkolodziej