Hallo zusammen.
Folgendes Problem:
Ich habe ein Programm dessen Assemblies an einem anderen Ort liegen. Um das zu lösen habe ich mich für das AssemblyResolve Event entschieden um die Assemblies dann selbst zu laden wenn sie benötigt werden.
Soweit funktioniert alles prima.
Jetzt habe ich aber noch einen Programmteil, der eine DLL dynamisch nachlädt. Die Abhängigkeiten dieser nachgeladenen DLL liegen an wieder einem ganz anderen Ort. Die sauberste Lösung fände ich, wenn ich mich beim Laden dieser DLL ein zweites Mal an AssemblyResolve anhänge und dann nur in dem dazu passenden Verzeichnis suche.
Dann hätte ich 2 Handler am AssemblyResolve hängen ich bin mir aber nicht ganz im klaren darüber wie das funktionieren soll, da das Event ja einen Rückgabewert (eine Assembly) hat und wenn 2 Methoden von dem Event angestoßen werden hätte ich ja 2 Rückgabewerte (im Normalfall einmal NULL und einmal die Assembly).
Außerdem kann ich dann nicht mehr rausfinden, wenn eine DLL völlig fehlt, da mein Assemblyresolver ja davon ausgehen müsste, dass nach ihm noch ein zweiter Resolver kommt und die DLL evtl findet.
Hat jemand eine Idee was mir weiterhelfen könnte? Funktioniert es überhaupt sich an Events die einen Rückgabewert haben mehrfach anzuhängen? Und wie verhält sich das Ganze dann?
Folgendes Problem:
Ich habe ein Programm dessen Assemblies an einem anderen Ort liegen. Um das zu lösen habe ich mich für das AssemblyResolve Event entschieden um die Assemblies dann selbst zu laden wenn sie benötigt werden.
Soweit funktioniert alles prima.
Jetzt habe ich aber noch einen Programmteil, der eine DLL dynamisch nachlädt. Die Abhängigkeiten dieser nachgeladenen DLL liegen an wieder einem ganz anderen Ort. Die sauberste Lösung fände ich, wenn ich mich beim Laden dieser DLL ein zweites Mal an AssemblyResolve anhänge und dann nur in dem dazu passenden Verzeichnis suche.
Dann hätte ich 2 Handler am AssemblyResolve hängen ich bin mir aber nicht ganz im klaren darüber wie das funktionieren soll, da das Event ja einen Rückgabewert (eine Assembly) hat und wenn 2 Methoden von dem Event angestoßen werden hätte ich ja 2 Rückgabewerte (im Normalfall einmal NULL und einmal die Assembly).
Außerdem kann ich dann nicht mehr rausfinden, wenn eine DLL völlig fehlt, da mein Assemblyresolver ja davon ausgehen müsste, dass nach ihm noch ein zweiter Resolver kommt und die DLL evtl findet.
Hat jemand eine Idee was mir weiterhelfen könnte? Funktioniert es überhaupt sich an Events die einen Rückgabewert haben mehrfach anzuhängen? Und wie verhält sich das Ganze dann?