Ik ben al 2 dagen aan het proberen om een redelijk Plugin systeem te ontwikkelen voor mijn Console Applicatie. Deze plugins zijn DLL bestanden. Dit is een voorbeeld van 1 van mijn tests:
Ik heb dit systeem dus in mijn 'hoofdapplicatie' ook. Daar werkt het prima, dus ik dacht. Als ik nou gewoon een partial class er van maak, dan gewoon in een DLL bestand doe. Maar dan weet ik niet hoe ik die RegisterCommands() moet uitvoeren.
Op google heb ik ook al veel onderzoek gedaan naar Interface's etc, maar elke keer als ik zoiets probeerde was het gemaakt voor Form applicaties. En ik snap niet hoe ik dan bijv die commands kon toevoegen aan mijn commands lijst.
Iemand tips voor het schrijven van dit soort plugins?
C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| public partial class CommandManager { private void Test(string[] args) { Console.WriteLine("Test command executed."); } private void Test2(string[] args) { Console.WriteLine("Test2 command executed."); } public void RegisterCommands() { mCommandHandlers.Add("test", new Line.Core.CommandManager.CommandHandler(Test)); mCommandHandlers.Add("test2", new Line.Core.CommandManager.CommandHandler(Test2)); } } |
Ik heb dit systeem dus in mijn 'hoofdapplicatie' ook. Daar werkt het prima, dus ik dacht. Als ik nou gewoon een partial class er van maak, dan gewoon in een DLL bestand doe. Maar dan weet ik niet hoe ik die RegisterCommands() moet uitvoeren.
Op google heb ik ook al veel onderzoek gedaan naar Interface's etc, maar elke keer als ik zoiets probeerde was het gemaakt voor Form applicaties. En ik snap niet hoe ik dan bijv die commands kon toevoegen aan mijn commands lijst.
Iemand tips voor het schrijven van dit soort plugins?