| 

.NET C# Java Javascript Exception

5
Hallo zusammen,
ich habe eine Anwendung und verweise dort auf DLLs eines anderen Programms. Die Eigenschaft "Lokale Kopie" habe ich auf False eingestellt, da ich die originalen DLLs ansprechen möchte um immer deren aktuellen Stand zu haben.
Wenn ich die Anwendung ausführe, dann bekomme ich eine "System.IO.FileNotFoundException: Die Datei oder Assembly ... oder eine Abhängigkeit davon wurde nicht gefunden. Das System kann die angegebene Datei nicht finden.".
Ich könnte jetzt jede DLL in die app.config nach folgendem Schema eintragen:

<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Sagede.OfficeLine.Shared" publicKeyToken="4ad8971889b881a9" culture="neutral" />
<codeBase version="5.1.0.0" href="file:///C:\Program Files (x86)\Sage\Office Line\5.1\Shared\Sagede.OfficeLine.Shared.dll"/>
</dependentAssembly>
</assemblyBinding>
</runtime>

Gibt es nicht eine einfachere Möglichkeit der Anwendung zu sagen, sie soll generell in dem Verzeichnis nach DLLs suchen? Das Verzeichnis mit den DLLs ist kein Unterverzeichnis des Programms.

Schon mal Danke im Voraus.

Gruß
Rolf
16.05.2011
RSS 53 1 5
3 Antworten
3
Hallo, ich habe mich für die Variante im 1. Link entschieden. Allerdings habe ich das Ganze noch in einen „Try ... catch“ Block gefasst und ich überprüfe „strTempAssmbPath != string.Empty
“, da sonst der Aufruf „Assembly.LoadFrom(strTempAssmbPath);“ einen Fehler verursacht.
Gruß
Rolf
RSS 18.05.2011
P.S. noch vielen Dank für die schnelle Antwort ;-)
RSS 18.05.2011
Schön. Dann könntest du die Anwort noch als akzeptiert markieren.
Martin Fuchs 18.05.2011
0
Versuch das mal:

<?xml version="1.0"?>
<configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath="DAS IST DER ORDNERPFAD" />
<publisherPolicy apply="yes" />
</assemblyBinding>
</runtime>
</configuration>
19.05.2011
phlow666 922 1 9
0
Hallo,
funktioniert leider nur dann, wenn das Verzeichnis der DLLs ein Unterverzeichnis des Programmverzeichnisses ist.
Gruß
Rolf
19.05.2011
RSS 53 1 5
RSS 53 1 5

Stelle deine Dll-Frage jetzt!