AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls DLLs mit Delphi für andere Sprachen? was muss man beachten?
Thema durchsuchen
Ansicht
Themen-Optionen

DLLs mit Delphi für andere Sprachen? was muss man beachten?

Ein Thema von SimStar001 · begonnen am 9. Okt 2008 · letzter Beitrag vom 10. Okt 2008
Antwort Antwort
SimStar001

Registriert seit: 18. Jan 2008
594 Beiträge
 
#1

DLLs mit Delphi für andere Sprachen? was muss man beachten?

  Alt 9. Okt 2008, 21:09
Hallo, ich möchte gerne meine Funktionen und Proceduren auch anderen Programmierern zur Verfügung stellen.


Dachte dabei an eine DLL.


gibt es da jetzt irgendwas besonderes was ich beachten muss, damit man diese z.B. auch mit c++ aufrufen kann!?

Oder kann ich sie ganz normal wie ich sie sonst auch für Delphi anwendungen programmiere, programmieren!?


danke!
Marco Tröger
  Mit Zitat antworten Zitat
Apollonius

Registriert seit: 16. Apr 2007
2.325 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: DLLs mit Delphi für andere Sprachen? was muss man beacht

  Alt 9. Okt 2008, 21:11
Das wichtigste ist, dass du nicht die Delphi- und BCC-spezifische Aufrufkonvention Register verwendest, sondern stdcall oder cdecl. Des Weiteren darfst du natürlich keine Delphi-spezifischen Konstrukte wie Ansistrings einsetzen. Auch auf Klassen solltest du verzichten. Stattdessen kannst du Interfaces verwenden.
Wer erweist der Welt einen Dienst und findet ein gutes Synonym für "Pointer"?
"An interface pointer is a pointer to a pointer. This pointer points to an array of pointers, each of which points to an interface function."
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: DLLs mit Delphi für andere Sprachen? was muss man beacht

  Alt 9. Okt 2008, 21:12
Keine delphispezifische Typen verwenden (z.B. String)
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#4

Re: DLLs mit Delphi für andere Sprachen? was muss man beacht

  Alt 9. Okt 2008, 21:15
Zitat von mkinzler:
Keine delphispezifische Typen verwenden (z.B. String)
Stattdessen eigenen sich PChars.
  Mit Zitat antworten Zitat
SimStar001

Registriert seit: 18. Jan 2008
594 Beiträge
 
#5

Re: DLLs mit Delphi für andere Sprachen? was muss man beacht

  Alt 9. Okt 2008, 21:34
Ok danke erstmal.

Wusste garnicht, dass strings delphispezifisch sind....

Zitat:
sondern stdcall oder cdecl
Diese aufrufarten sagen mir leider nix, wie funktionieren die, bzw ann mir jemand nen link geben für eine gute erklärung/tutorial!?

danke
Marco Tröger
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: DLLs mit Delphi für andere Sprachen? was muss man beacht

  Alt 9. Okt 2008, 21:36
Einfach bei der Deklaration der Prozeduren/Funktionen angeben
Markus Kinzler
  Mit Zitat antworten Zitat
SimStar001

Registriert seit: 18. Jan 2008
594 Beiträge
 
#7

Re: DLLs mit Delphi für andere Sprachen? was muss man beacht

  Alt 9. Okt 2008, 21:38
also statt wie bisher export dann einfach stdcall ?

Wenn ja wie schaut dann das ende der dll aus. bisher musste ich ja immmer alle Funktionen auf die zugegriffen werden sollte bei

exports .......; angeben. bleibt dieses segment erhalten oder ändert sich da dann auch was!?
Marco Tröger
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: DLLs mit Delphi für andere Sprachen? was muss man beacht

  Alt 9. Okt 2008, 21:42
Dies ändert sich nicht.

procedure IrgendWas; cdecl; http://www.delphi-treff.de/tutorials/objectpascal/dlls/
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#9

Re: DLLs mit Delphi für andere Sprachen? was muss man beacht

  Alt 10. Okt 2008, 08:06
Strings und andere Delphi-Interna kann man schon verwenden, nur nicht als Parameter von Funktionen.

Du musst also allein bei den Funktionsköpfen aufpassen, dass da allgemeingültige Parametertypen verwendet werden.
Und du kannst natürlich keine VCL-Anwendung einfach in eine DLL packen.
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:39 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz