Ich habe ein Klassenbibliotheksprojekt, das auf Drittanbieter-DLLs verweist. aber wenn ich meine Klassenbibliothek als dritte Partei (DLL) in den anderen Projekten (Entwickler) referenziere, haben sie einen Fehler bekommen. Die Datei oder Assembly konnte nicht geladen werden. "Third party dlls that my class library project reference". Mein Bedürfnis ist, ich möchte anderen meine Klassenbibliothek dll alleine geben, ohne ihnen die dlls zu geben, von denen es abhängt. Wie kann ich das erreichen?C# Wie paketieren (kapseln) Sie Klassenbibliotheken, die auf DLLs von Drittanbietern verweisen?
Antwort
Wenn Ihre DLL von einigen anderen DLLs abhängt, können Sie Ihre DLL alleine verteilen, aber niemand kann sie verwenden, ohne die richtigen Abhängigkeiten hinzuzufügen.
Dies ist zum Beispiel das, was Nuget tut. Sie kompilieren Ihre DLL mit einem bestimmten Nuget Package. Verteilen Sie nur Ihre DLL und weisen Sie die Benutzer Ihrer DLL an, die richtigen Nuget-Pakete an ihrem Ende hinzuzufügen.
Hallo danke für deine Hilfe, aber ich möchte nicht, dass meine Benutzer die installieren referenzierte DLLs nur ich möchte, dass sie auf meine DLL verweisen – yo2011
Dann sind Sie auf @bassfaders Antwort. Das Zusammenführen der DLLs zu einem oder das Freigeben der DLLs, auf die Sie angewiesen sind, hängt von Ihren eigenen ab. In beiden Fällen müssen Sie die Lizenzvereinbarungen auf beiden prüfen, um sicher zu gehen, dass Sie dies tun dürfen. –
- 1. Können Sie DLLs von Drittanbietern in SAPUI5 verwenden?
- 2. Wie packen Sie JARs von Drittanbietern in ein EJB-JAR?
- 3. Soll ich DLLs von Drittanbietern wie JSON.NET digital signieren?
- 4. Verweisen Sie die benutzerdefinierte Klasse auf MainActivity.java
- 5. Verwalten interner Abhängigkeiten von Drittanbietern
- 6. Warum verweisen die Office 2016-Kontextmenüstrings in der Registrierung manchmal auf nicht vorhandene DLLs?
- 7. Authentifizieren von DLLs in C#
- 8. Wie kommunizieren DLLs in C#
- 9. Wie verweisen .NET Framework-Klassen auf native Windows-DLLs, ohne bititätsspezifisch zu werden?
- 10. So finden Sie die Komponente von Drittanbietern, die in einer Bibliothek von Drittanbietern verwendet wird
- 11. Design-Strategien für Klassenbibliotheken, die Javascript und C# umfassen
- 12. Wie MSBuild auf die richtigen Baugruppen verweisen?
- 13. .def-Dateien C/C++ DLLs
- 14. Scala/Akka Wie verweisen Sie auf die empfangene Nachricht?
- 15. Wie erhalten Sie Cookies von Drittanbietern?
- 16. Wie paketieren Sie Kaskadierungsklassen mit Parceler? mit Parceler wie diese
- 17. PyQwt mit py2exe paketieren
- 18. Verweisen auf eine Klassenbibliothek von Drittanbietern in einer SQL Clr-Klasse
- 19. Verwenden von C++ - DLLs in Python
- 20. Wie referenziere ich Konfigurationsinformationen aus mehreren Klassenbibliotheken?
- 21. Verweise auf C Dlls von Windows 10 Universal App über CPU-Architekturen
- 22. Überschreiben/Ändern von C++ - Klassen mit DLLs
- 23. So verweisen Sie auf die Fremdschlüsseltabelle, um auf eine andere Tabelle zu verweisen?
- 24. PHP kapseln globale Variablen
- 25. Wie verweisen Sie MS Office-Interops in C#?
- 26. DLLs von falschen AppplicationBase geladen, wenn sie versuchen gemischten C# und C++/CLI-DLLs in einem neuen AppDomain zu laden
- 27. Wie die C verweisen: \ Users \ Public Verzeichnis programmatisch in C#
- 28. Verweisen Sie auf die Schaltfläche zurück auf UINavigationBar
- 29. Erstellen von C++ - DLLs mit Visual Studio
- 30. Angular: Wie Logik in eine Direktive kapseln?
Einfache Antwort ist: Sie können nicht, müssen Sie diese Referenzen auch irgendwie bereitstellen. Wenn Sie die einzelnen DLLs nicht wirklich bereitstellen möchten, besteht eine Option darin, die verschiedenen Assemblys (dlls) in einer einzigen Datei zusammenzufassen [mithilfe von ILMerge, wie in diesem Code Project-Artikel beschrieben] (http://www.codeproject.com)/Articles/9364/Merging-NET-Assembly-using-ILMerge). Aber beachte auch die Lizenzierung anderer Drittanbieter (wie du es vielleicht nicht darfst!) – bassfader
Du meinst, ich kann das nicht tun – yo2011