Hi zusammen, ich arbeite gerade an einer DLL für die Ansteuerung von diversen Geräten über die Serielle Schnittestelle. Die Library soll später auf meiner Seite zum donwloaden angeboten werden. Programmieren tue ich das ganze in C++. Da ich auch Usern die mit VB oder Delphi arbeiten die Möglichkeit geben möchte mit dieser DLL zu arbeiten müsste ich eine Art Header Datei wie bei C erstellen. Ich habe leider keine Ahnung von VB oder Delphi und müsste deswegen wissen wie in der jeweiligen Sprache so eine Datei auszusehen hat. Könnt Ihr mir weiterhelfen?
Ich kenne jetzt zwar Delphi nicht, würde in der Dll aber trotzdem ein COM Objekt zur Verfügung stellen. Die Dinger kannst Du in eigentlich allen Sprachen schmerzfrei verwenden. Das zahlt sich auch dann aus, wenn Events ins Spiel kommen (es kommt etwas über die Serielle rein und Du willst die Anwendung benachrichtigen). Die Mechanismus des Rückrufs ist klar definiert. Und über die eingebundene TypeLib beschreibt sich die Dll selbst, Du mußt da nicht noch extra etwas mitliefern. Ansonsten mußt Du beachten - VB kennt außer Byte keine vorzeichenlosen Typen - Du darfst nur native Typen austauschen, mit z.B. einem std::string kan VB nichts anfangen - Funktionen mit variabler Parameterliste sind tabu - Die Aufrufskonvention ist __stdcall - Es dürfen keine Exceptions nach außen dringen, niemand wird diese Fangen können
Warum mußt du ne Headerdatei erstellen? Es reicht doch, wenn du die DLL zum download anbietest und außerdem eine Dokumentation mit Funktions- und Parameterbeschreibung.
@Rene: Vielen Dank. Werde das mit einem COM Objekt versuchen zu realisieren, da ich für gewisse Funktionen auch Strukturen verwende. @Jens: Genau das hab ich in der Header Datei gemacht (Dokumentiert).
Gibts schon! Nicht nochmal programmieren! ;) http://www.geekhideout.com/iodll.shtml Das isn COM-Objekt. funktioniert aus delphi, C++ und VB
Wenn ich das richtig sehe, ist das eine Dll, die direkte Portzugriffe erlaubt. Darum geht's hier aber nicht. Und ein COM Objekt ist da auch nicht drin. Davon ab: Wer so eine Dll benötigt, macht ganz gewaltig was falsch. Von so einem Quatsch sollte man lieber die Finger lassen. Oder hast Du einfach nur den falschen Link erwischt und meinst ganz was anderes?
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.