Ich schreibe Programme, die intern von unserer Firma verwendet werden. Ich habe mehrere Support-DLLs erstellt, die ich in vielen Projekten referenziere. (ein generischer Datenzugriffshelfer zum Beispiel) Anstatt eine Kopie von "datatools.dll" in jedem Programmverzeichnis zu haben (scheint Standardverhalten zu sein) möchte ich eine Kopie haben, auf die von vielen Programmen verwiesen werden kann. Ein bisschen wie mein eigenes System32-Verzeichnis.Verweis auf freigegebene DLLs in VS-Bereitstellungsprojekt
Ich habe einen "Reference path" zu meinem Projekt hinzugefügt. Ich kompiliere das Projekt dann das Bereitstellungsprojekt. Der Installer funktioniert gut. Die freigegebenen DLLs befinden sich in meinem Referenzpfad. Aber wenn ich das Programm ausführen, bekomme ich den Fehler "System.IO.FileNotFoundException: Konnte Datei oder Assembly nicht laden datatools.dll, Version = 1.0.0.0, Culture = neutral, PublicKeyToken = null 'oder eine seiner Abhängigkeiten. Die angegebene Datei wurde vom System nicht gefunden." Wenn ich datatools.dll in den gleichen Ordner wie die EXE verschiebe, läuft das Programm ohne Probleme.
Kann ich einen freigegebenen Speicherort für freigegebene DLLs erstellen und verwenden? Oder ist das nur eine schlechte Idee?
Vielen Dank für die schnelle Antwort. Ich verwende VS2k8. Ich schaute auf die Zeichen-Option, die du und Yuliy erwähnt hast, aber fürchte, es ist über meinem Kopf. Ich lebe einfach mit mehreren Kopien auf den Computern meiner Benutzer. – mohnston
eine idee ob ich darauf verzichten kann oder nicht ??? Ich meine, ich möchte, dass diese gemeinsamen DLLs im isolierten Ordner und nicht in meinem Anwendungsordner sein sollten. Einige von dlls sind nicht unsere eigenen dlls und deshalb ist das Senden ein Problem. – Denish
lassen Sie mich bitte mohnston wissen, ob Sie eine endgültige Lösung haben oder nicht – Denish