Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools

Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools (http://www.expert-advisor.com/forum/index.php)
-   Programmierung MQL4 (http://www.expert-advisor.com/forum/forumdisplay.php?f=220)
-   -   So schreibt man eine DLL (http://www.expert-advisor.com/forum/showthread.php?t=2803)

Racki 25.03.13 18:34

So schreibt man eine DLL
 
Liste der Anhänge anzeigen (Anzahl: 1)
Helas,
ich habe mir mal etwas Zeit genommen und das Thema DLL noch einmal aufgegriffen.

Das Resultat ist eine DLL, die für unseren EA die Berechnung der Pivotpoints übernimmt.
Für die Berechnung dieser Punkte empfängt die DLL als Parameter den Höchstkurs, Tiefkurs und den Schlusskurs des Vortages vom EA.
Des Weiteren stehen in der DLL 3 Methoden zur Verfügung um die Pivotpoints mit dem EA abzufragen.

Geschrieben habe ich die DLL mit Dev-C++

Zur Vorgehensweise um eine DLL zu schreiben.
In Dev-C++ erstellt man ein neues Projekt vom Typ DLL, das ist das Symbol mit den Puzzleteilen und gibt dem ganzen einen aussagekräftigen Namen.
Zum Editieren die dllmain.cpp links im Navigator auswählen, sollte diese nicht schon im Code-Editor aktiv sein.
Den Code, den die Entwicklungsumgebung schon eingefügt hat, muss man um einen wichtigen Block erweitern.
Und zwar fügt man am unteren Ende des Codes folgendes ein:
PHP-Code:

extern "C"
{
   
__declspec(dllexportint MeineFunktion()
   {
     return (
123);
   }


__declspec(dllexport) kann man entsprechend auch vorher schon mit einem #define-Kürzel versehen, wichtig ist aber, dass es vor jeder Funktion/Methode steht die man hinterher mit seinem EA ansprechen möchte.

Vom Prinzip her ist dies schon das wichtigste.
Für den Fall das sich jemand damit auseinandersetzen möchte, füge ich dem Posting mein Projekt im Zip-Format als Anhang hinzu.

s.l.
Racki


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:01 Uhr.

Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.6.1
Powered by vBCMS® 2.7.0 ©2002 - 2024 vbdesigns.de
Copyright ©2009 - 2023 by Expert-Advisor.com - Das Metatrader Forum