myCSharp.de - DIE C# und .NET Community
Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 
 | Suche | FAQ

» Hauptmenü
myCSharp.de
» Startseite
» Forum
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Suche
» Regeln
» Wie poste ich richtig?
» Forum-FAQ

Mitglieder
» Liste / Suche
» Wer ist wo online?

Ressourcen
» openbook: Visual C#
» openbook: OO
» Microsoft Docs

Team
» Kontakt
» Übersicht
» Wir über uns

» myCSharp.de Diskussionsforum
Du befindest Dich hier: Community-Index » Diskussionsforum » Entwicklung » Rund um die Programmierung » DLL zur Laufzeit laden und ausführen
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | Thema zu Favoriten hinzufügen

Antwort erstellen
Zum Ende der Seite springen  

DLL zur Laufzeit laden und ausführen

 
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
oehrle oehrle ist männlich
myCSharp.de-Mitglied

Dabei seit: 08.06.2009
Beiträge: 348
Entwicklungsumgebung: VisualStudio 2010/2012
Herkunft: Germany


oehrle ist offline

DLL zur Laufzeit laden und ausführen

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo, in einer meiner Applikationen (die eine ist sehr umfangreich), muss eine neue Anwendung integriert werden.
Ich habe diese Anwendung als eigenes Projekt erstellt (Klassenbibliothek). Diese neue Anwendung kann sich von Zeit zu Zeit den Anforderungen entsprechen ändern, und ich würde das gerne so gestalten, dass ich in der Hauptanwendung diese DLL zur Laufzeit aus einem bestimmten Verzeichnis laden kann. Das hätte den Vorteil, dass ich diese DLL dann gegen neuere austasuchen könnte, ohne die Hauptanwendung neu veröffentlichen zu müssen (ClickOnce).
Ist das so der richtige Weg mit der DLL, oder wie würde man so etwas machen?

Ich denke dann weiter an Assembly.LoadFrom(meineDLL.DLL)

Dann die Hauptmethode aufrufen, in der alle Untermethoden abgearbeitet werden.
Würde das aus eurer Sicht so funktionieren?

Noch etwas, die Konfigurationsdatei für diese DLL kann dann genausso geladen und ausgewertet werden?

Für eine Info wäre ich dankbar, bisher waren meine imtegrieren Anwendungen immer immer als Projekte eingebunden.
24.06.2019 08:04 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Abt
myCSharp.de-Team

avatar-4119.png


Dabei seit: 20.07.2008
Beiträge: 12.925
Herkunft: Stuttgart/Stockholm


Abt ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Zitat von oehrle:
Hallo, in einer meiner Applikationen (die eine ist sehr umfangreich), muss eine neue Anwendung integriert werden.

Umfangreich ist relativ ;-)

Zitat von oehrle:
und ich würde das gerne so gestalten, dass ich in der Hauptanwendung diese DLL zur Laufzeit aus einem bestimmten Verzeichnis laden kann.

Also ein Pluginsystem.

Zitat von oehrle:
Das hätte den Vorteil, dass ich diese DLL dann gegen neuere austasuchen könnte, ohne die Hauptanwendung neu veröffentlichen zu müssen (ClickOnce).

Das hört sich nicht so an, dass Du da einen wirklichen CI/CD Prozess dran hängen hast...?

Zitat von oehrle:
Ich denke dann weiter an Assembly.LoadFrom(meineDLL.DLL)

So funktionieren im Prinzip Plugins in .NET Framework.
In .NET Core gibt es keine AppDomains mehr, daher ist das in dem Fall nicht ganz sooo einfach.

 [FAQ] Eigene Anwendung pluginfähig machen
24.06.2019 09:45 Beiträge des Benutzers | zu Buddylist hinzufügen
oehrle oehrle ist männlich
myCSharp.de-Mitglied

Dabei seit: 08.06.2009
Beiträge: 348
Entwicklungsumgebung: VisualStudio 2010/2012
Herkunft: Germany

Themenstarter Thema begonnen von oehrle

oehrle ist offline

Gelöst - DLL extern aus Verzeichnis laden

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo, für alle die etwas einfaches brauche. Habe hier was passendes gefunden (Ende vom Beitrag).

 Link zum Artikel

Bei mir ist das so, dass ich eine Klassenbibliothek erstellt habe, bei der mehrere Klassen vorhanden sind um die Teilaufgaben zu strukturieren. Die Abarbeitung der Schritte (Methoden) sind in einer Hauptmethode untergebracht, die ich dann Aufrufen (so wie am Ende in diesem Artikel).
Und shön ist, das auch die Konfigurationsdatei in diesem DLL-Verzeichnis liegt und ausgewertet werden kann.
02.07.2019 10:51 E-Mail | Beiträge des Benutzers | zu Buddylist hinzufügen
Abt
myCSharp.de-Team

avatar-4119.png


Dabei seit: 20.07.2008
Beiträge: 12.925
Herkunft: Stuttgart/Stockholm


Abt ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

.. und beachtet, dass der Artikel über 10 Jahre alt ist und man das in der Form so nicht mehr unbedingt machen würde/sollte.
Da ist das im Artikel genannte MEF der deutlich bessere, typisierte Weg.
02.07.2019 11:04 Beiträge des Benutzers | zu Buddylist hinzufügen
Baumstruktur | Brettstruktur       | Top 
myCSharp.de | Forum Der Startbeitrag ist älter als 2 Monate.
Der letzte Beitrag ist älter als ein Monat.
Antwort erstellen


© Copyright 2003-2019 myCSharp.de-Team | Impressum | Datenschutz | Alle Rechte vorbehalten. | Dieses Portal verwendet zum korrekten Betrieb Cookies. 24.08.2019 06:21