Schnittstelle bereitstellen-API

Gast #3704129
Lesenswert?
• ▲
▼
Hallo.

Ich habe in C/C++ geschriebene Routinen zur Ansteurung von speziellen 
USB-Geraeten. Diese API's zum oeffnen,lesen,schreiben... des Gerates, 
moechte ich nun anderen in Form einer Schnittstelle zur Verfuegung 
stellen. Jetzt stell ich mir nun die Frage, welche Moeglichkeiten es 
gibt und welche davon sozusagen Stand der Dinge sind. Aber das 
wichtigste ist wie benutzerfreundlich diese Schnittstelle ist.
Daher meine Frage wer mir hier vielleicht einen Rat oder Hinweise geben 
kann oder entsprechende Erfahrungsberichte.

Im Vorfeld hab ich mir Gedanken ueber eine Schnittstelle via Dlls 
gemacht.Ist aber eher nicht wirklich Stand der Dinge bzw. der Benutzer 
der Api muss sich mit Aufrufkonventionen der Dll-Funktionen vertraut 
machen-also viel zu umstaendlich.
Oder die ActiveX COM Schnittsstelle, ist aber auch schon Asbach, oder?

Also meine Frage an euch was es so alles gibt, insbesondere im 
professionellen Umfeld.

Achso: Umgebung ist Windows 32/64bit.

Danke
Stefan
Persönliche Seite #3704171
Lesenswert?
• ▲
▼
Und in welcher Form liegen Deine Funktionen vor? Bedürfen die ein 
ständig laufendes Programm, oder sind das Dinge, die auch in einer 
einfachen statischen Library verpackt werden könnten? Müssen Komponenten 
zwangsweise mit regsrv32 o.ä. im System angemeldet werden, oder kann der 
Code "einfach so" genutzt werden?


Auch wenn COM/ActiveX & Co. für Nutzer von VB & Co einfach zu nutzen 
sind, sind diese Schnittstellen aus Sicht von C/C++-Programmierern ein 
mittlerer Krampf im Arsch, vor allem beim Debuggen.
Gast #3704188
Lesenswert?
• ▲
▼
Muss nicht als Service oder so angemeldet werden. Das Problem bisher, 
war das
Benutzer sich mit der Dll auseinander setzen mussten und entsprechende 
Aufrufkonventionen beachten mussten. Insbesonder C# Anwender, die die 
API's ziemlich umstaendlich implementiert haben(aus dem C Code).
Gast #3704210
Lesenswert?
• ▲
▼
Stefan schrieb:
> Benutzer sich mit der Dll auseinander setzen mussten und entsprechende
> Aufrufkonventionen beachten mussten. Insbesonder C# Anwender, die die
> API's ziemlich umstaendlich implementiert haben(aus dem C Code).

dann liefert man einfach für C# eine Implementierung mit aus. Dann kann 
der Anwender es einfach nutzen.

Also Dll + C# Assembly, für leute die C/C++ nutzen reicht dann die Dll.
Gast #3704554
Lesenswert?
• ▲
▼
Stefan schrieb:
> Also meine Frage an euch was es so alles gibt, insbesondere im
> professionellen Umfeld.

Zweckmässig: 1. eine DLL, dazu die "Interface"-Dateien für verschiedene 
Sprachen, .h für C, defines für basic, type für Pascal usw. was du halt 
alles unterstützen willst.

2. Parallel dazu die gleichen Funktionen als Object-Dateien zum direkten 
Dazulinken, wenn du es magst auch als Source.

3. eine brauchbare Beschreibung!

Ich finde nicht, dass was gegen DLLs spricht, ganz Windows besteht aus 
nichts anderem. Das fällt einem bloss nicht mehr auf, weil windows.h 
(oder .bas oder .pas usw.) automatisch mit eingebunden wird.

Georg

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren