moin, folgende ausgangssituation: c# windows forms projekt hardwarekomponenten per DLL ansprechbar (hardware.dll) eigene klassen für die hardware (zB class Camera, die methoden von hardware.dll nutzt) nun will ich die methoden der klassen (zB Camera.GetPicture) als dll extrahieren, damit die DLL von anderen entwicklern in projekt eingebunden werden kann. am besten so, dass man nur meine dll und nicht die hardware.dll einbinden muss. benutze visual studio 2010 pro. danke schon mal
Hast du Zugriff auf die Sourcen der hardware.dll? Wenn nicht wirst du die wohl mit ausliefern müssen. Ansonsten: Einfach ein DLL-projekt erstellen und deine Hardwareklassen da rein kopieren. Dann hast ja deine dll.
nein leider nicht, die kommt direkt vom hersteller. muss der nächste entwickler dann ebenfalls die hardware.dll einbinden? kann man die vielleicht irgendwie dynmaisch einbinden? wie gesagt, es ist ein windows forms projekt. ich könnte natürlich die entsprechenden klassen in ein eigenes dll projekt kopieren, aber geht das nicht direkt aus dem forms projekt heraus?
Was spricht dagegen daß Deine DLL die andere DLL dynamisch einbindet? Dann müssen die anderen Entwickler die Hardware.dll nicht mehr einbinden sondern nur noch in das Verzeichnis kopieren. Viele Grüße Nicolas
1. Ja, andere Enwtickler benötigen die DLL auch. Natürlich kann man sie auch dynmisch zur Laufzeit einbinden - aber wo wäre da der Vorteil? EDIT: Ich glaube, ich habe dich misverstanden. DEINE dll referenziert die hardware.dll. Beide müssen also im gleichen Verzeichnis liegen. Der andere Entwickler muss nun nurnoch DEINE dll in sein Projekt einbinden. 2. Irgendwie hast du da eine merkwürdige Vorstellung ;-) Du willst belibige Klassen auswählen und daraus per Mausklick eine DLL erstellen lassen? Das ist relativ unsinnig (ganz abgesehen davon, dass es nicht geht). Was machst du z.B. wenn du an einer Klasse was veränderst und die DLL neu bauen musst? Willst du dann wieder alle Klassen markieren und eine DLL generieren? Was wenn du eine Klasse dabei vergisst? => Mach ein eigenes Projekt dafür. Das ist kaum Aufwand und deutlich sauberer.
rechtsklick auf verweise hinzufügen der dll rest namespace einbinden rest macht intellisense oder der objectexplorer
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.