deysmacro: Es ist besser, dass MetaQuotes die Möglichkeit bietet, dass der Benutzer entscheiden kann, ob er nach der Neukompilierung zurückgesetzt werden möchte oder nicht, oder? Ja, ich stimme zu.
Außerdem - Wenn wir die Variablenänderungen in den aktiven Diagrammen erzwingen wollen (eas) - gibt es nicht eine Cache-Datei, die wir einfach löschen können, um die Variablenänderung beim Neukompilieren zu erzwingen?
Ich habe versucht, sie zu finden - aber die gespeicherten Werte scheinen irgendwo in einer geheimnisvollen Datei versteckt zu sein...
Nochmals vielen Dank für Ihre Hilfe...
Die obigen Code-Beispiele würden es auch tun, aber es wäre schön zu wissen, wo die Cache-Einstellungen zu finden sind - als weitere Abhilfe....
Ein manueller Eingabedialog ist in der Regel in der Kodierungsphase nicht erforderlich, so dass Sie den externen Modifikator erst dann verwenden, wenn die Kodierungsänderungen abgeschlossen sind.
// will not reset on recompile unless the value is changed in the code.externint Var1 = 20;
externint Var2 = 40;
//will always reset on recompileint Var1 = 20;
int Var2 = 40;
Ich habe extern entfernt und neu kompiliert, aber als ich MetaTrader startete und mir die EA-Einstellungen im Chart ansah, waren die Variablen, aus denen ich extern entfernt hatte, komplett verschwunden... Ich schloss MetaTrader und startete MetaEditor erneut...
Ich fügte extern wieder ein - kompilierte erneut - und startete dann MetaTrader neu - die Variablen wurden wieder in den EA eingefügt - und die Variablen wurden mit den neuen Variableneinstellungen aktualisiert...
So - es hat funktioniert - DANKE TON! :) Soopa stahs!
Nach der Neukompilierung (F5), gehen Sie zu EA, öffnen Sie die Eingaben (F7) - unten rechts befindet sich die Schaltfläche "Zurücksetzen". Wenn Sie darauf klicken, wird der EA auf die (hart-)kodierten Werte zurückgesetzt.
Ich habe eine Weile gebraucht, um das herauszufinden... LOL. Wunder gibt es wirklich. Genauso wie Scheiße. LOL
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Erlauben Sie die Verwendung von Cookies, um sich auf der Website MQL5.com anzumelden.
Bitte aktivieren Sie die notwendige Einstellung in Ihrem Browser, da Sie sich sonst nicht einloggen können.
Sie sind angemeldet. Die Zwei-Faktor-Authentifizierung wurde deaktiviert. Richten Sie sie erneut ein und scannen Sie einen neuen QR-Code oder fahren Sie mit deaktivierter Zwei-Faktor-Authentifizierung fort.
Es ist besser, dass MetaQuotes die Möglichkeit bietet, dass der Benutzer entscheiden kann, ob er nach der Neukompilierung zurückgesetzt werden möchte oder nicht, oder? Ja, ich stimme zu.
// #define EXTERN extern EXTERN typename var1=...; EXTERN typename var2=...;WHRoeder... Ich bin immer noch ein wenig verwirrt über das, was Sie sagen...
Wie würde also der Code geschrieben werden, um Variablenänderungen in den Diagrammen bei der Neukompilierung zu erzwingen?
Dies ist für viele von uns eine große Sache - ich denke aus BEIDEN Perspektiven...
Einige Leute wollen nicht, dass sich die Variablen beim Neukompilieren ändern - und das verstehe ich TOTAL...
Aber für andere - die 30+ Paare laufen haben - ist es ein DISASTER, in jedem Chart auf "Reset" klicken zu müssen...
Wie auch immer, ich denke, was Sie sagen, ist die obige Code-Änderung wird entweder erzwingen Variable Änderungen, oder nicht...
Könnten Sie bitte ein Beispiel geben, etwa so:
Variablenänderung erzwingen:
(Beispiel hier)
Keine Variablenänderung erzwingen:
(Beispiel hier)
Ich denke, die obigen Ausführungen wären für beide Seiten dieses Szenarios sehr hilfreich...
Vielen Dank für Ihre Hilfe!
Außerdem - Wenn wir die Variablenänderungen in den aktiven Diagrammen erzwingen wollen (eas) - gibt es nicht eine Cache-Datei, die wir einfach löschen können, um die Variablenänderung beim Neukompilieren zu erzwingen?
Ich habe versucht, sie zu finden - aber die gespeicherten Werte scheinen irgendwo in einer geheimnisvollen Datei versteckt zu sein...
Nochmals vielen Dank für Ihre Hilfe...
Die obigen Code-Beispiele würden es auch tun, aber es wäre schön zu wissen, wo die Cache-Einstellungen zu finden sind - als weitere Abhilfe....
Also auch...
Wenn ich die Zeile ändere
#define EXTERN externextern typenname var1=...;
in
#define EXTERN externdefine extern typename var1=...;
Ich erhalte eine Fehlermeldung - externe Variablen wurden bereits definiert...
Also - ich denke - Ihr Workaround scheint verwirrend zu sein, könnten Sie das bitte klären...
Vielen Dank!
Also auch...
Wenn ich die Zeile ändere
extern typenname var1=...;
in
define extern typename var1=...;
Ich erhalte eine Fehlermeldung - externe Variablen wurden bereits definiert...
Also - ich denke - Ihr Workaround scheint verwirrend zu sein, könnten Sie das bitte klären...
Vielen Dank!
Versuchen Sie dies:
#define EXTERN und hier nichts einfügen
EXTERN bool trade1 =true; <= Fügen Sie EXTERN ein, wo normalerweise extern steht.
EXTERN bool trade2 =true;
EXTERN bool trade3 = false;
Wenn Sie die Externs am Anfang einfügen wollen, machen Sie folgendes:
#define EXTERN extern
Wenn Sie extern entfernen wollen, tun Sie dies:
#define EXTERN stellen Sie sicher, dass Sie extern wie folgt entfernen
#define EXTERN
Andy
Ein manueller Eingabedialog ist in der Regel in der Kodierungsphase nicht erforderlich, so dass Sie den externen Modifikator erst dann verwenden, wenn die Kodierungsänderungen abgeschlossen sind.
Tolles Zeug... Vielen Dank so viel...
Ich habe extern entfernt und neu kompiliert, aber als ich MetaTrader startete und mir die EA-Einstellungen im Chart ansah, waren die Variablen, aus denen ich extern entfernt hatte, komplett verschwunden... Ich schloss MetaTrader und startete MetaEditor erneut...
Ich fügte extern wieder ein - kompilierte erneut - und startete dann MetaTrader neu - die Variablen wurden wieder in den EA eingefügt - und die Variablen wurden mit den neuen Variableneinstellungen aktualisiert...
So - es hat funktioniert - DANKE TON! :) Soopa stahs!
// #define EXTERN extern EXTERN typename var1=...; EXTERN typename var2=...;#define EXTERN extern EXTERN typename var1=...; EXTERN typename var2=...;#define EXTERN /*EMPTY*/ EXTERN typename var1=...; EXTERN typename var2=...;Hallo!
Nach der Neukompilierung (F5), gehen Sie zu EA, öffnen Sie die Eingaben (F7) - unten rechts befindet sich die Schaltfläche "Zurücksetzen". Wenn Sie darauf klicken, wird der EA auf die (hart-)kodierten Werte zurückgesetzt.
Ich habe eine Weile gebraucht, um das herauszufinden... LOL. Wunder gibt es wirklich. Genauso wie Scheiße. LOL
Mit freundlichen Grüßen,
Simon
S Liebe Nia