Erzeugt keine ex4-Datei - Seite 2

 
Mathemat:
Ich kompiliere einwandfrei, Build 509. Die Unterstriche sind da - aber nur als führende Zeichen. Ich verwende diese Zeichen normalerweise nicht innerhalb von Variablen.

Der Unterstrich ist also kein Zeichen für eine Dekompilierung.

Ich selbst verwende den Unterstrich aktiv sowohl als Master als auch als Inline - alles kompiliert ohne Probleme

 

Und ich habe es drinnen versucht, es wurde auch kompiliert. Ich sage Ihnen, der Algorithmus ist eindeutig nicht ungeschickt.

 
Mathemat:

Und ich habe es drinnen versucht, es wurde auch kompiliert. Ich sage Ihnen, der Algorithmus ist eindeutig nicht ungeschickt.

Und hier habe ich absichtlich, nur interessehalber, den Indikator aus dem Netz dekompiliert und kompiliert - kein ex4. Kein ex4. Dann habe ich in mehreren Schleifen die generierten Zählernamen durch i ersetzt, einige Puffernamen durch lesbare korrigiert und ... Oh Wunder ... ...der Decompiler hörte auf, ein Decompiler zu sein - er kompilierte und funktionierte, obwohl der Rest des Codes wie eine Jauchegrube aussieht...

Ich denke also, es gibt noch einiges zu tun ...

 
Die Entwickler sitzen gerade in diesem Thread, lesen Ihre Enthüllungen und danken Ihnen...
 
Renat:

Glauben Sie selbst, dass _ zu haben, Dekompilierung und Verbot bedeutet?

Nun, so eine dumme Behauptung kann man nicht aufstellen. Schauen Sie sich "Ihren" Code an und fragen Sie sich, ob die Unterstreichungen in diesem Sammelsurium von automatisch generierten Bezeichnern und dem Rest des Codes irgendeine Bedeutung haben.


Du sprichst von der 509er Version, ja, ich habe das Update gemacht, es funktioniert bereits gut. Offenbar mögen die Leute Ihre "Innovationen" nicht.

MetaTrader 4 Kunden-Terminal Build 509

  1. Terminal: Der Start des Client-Terminals nach dem LiveUpdate-Update bei aktivierter UAC wurde korrigiert.
  2. Terminal: Die Übersetzung der Benutzeroberfläche ins Portugiesische wurde aktualisiert.
  3. MQL4: Es wurde ein Kompilierungsfehler behoben, der in einigen Fällen Fehler bei der Ausführung von MQL4-Programmen verursachte.
  4. Creplog behebt.


Die Aktualisierung ist über das LiveUpdate-System verfügbar.

Sie wurde am 24.06. aktualisiert. Ich glaube, es betrifft Punkt 3(

  1. MQL4: Es wurde ein Kompilierungsfehler behoben, der in einigen Fällen zu Fehlern bei der Ausführung von MQL4-Programmen führte).

Ich meinte den 500er Build, der hat definitiv dieses Problem. Heute funktioniert alles, nachdem sie auf die 509er Version umgestellt haben.

Sie haben das Problem geschaffen und es dann erfolgreich gelöst, gut für Sie)))

 
Mathemat:
Die Entwickler sitzen gerade in diesem Thread, lesen Ihre Enthüllungen und danken Ihnen...
Nun, ich denke, das ist etwas, das Sie zur Kenntnis nehmen könnten, ja sogar sollten.
 

Ich habe mich zu früh darüber gefreut, jetzt bekomme ich nur einen Kompilierfehler:

Toll, jetzt müssen Sie nicht mehr Code schreiben, sondern herausfinden, wo und welche Art von Fehlern der Compiler erzeugt,

Ich schätze, es wird einfacher sein, frühere funktionierende Builds zu installieren, weil ich mit solchen Updates nicht weit komme.

 
OmegaTube:

Ich habe mich zu früh gefreut, jetzt gibt es nur noch einen Kompilierfehler:

Toll, jetzt müssen Sie nicht mehr Code schreiben, sondern herausfinden, wo und welche Art von Fehlern der Compiler erzeugt,

Ich schätze, es wird einfacher sein, frühere funktionierende Builds zu installieren, weil ich mit solchen Updates nicht weit komme.

Wenn es Ihr Code ist, tut es mir leid, aber warum haben Sie so viel Mist gebaut, dass der Compiler ihn als dekompiliert betrachtet? Ich wiederhole - es ist mir gelungen, ein bekanntes dekompiliertes ex4 zu kompilieren, wobei ich die Namen einiger Variablen und Puffer dieses Indikators etwas aufgeräumt habe und den Rest des Durcheinanders so gelassen habe, wie er ist.
 
Es ist nicht sein Code...
 

Ich habe schon lange nicht mehr versucht, die Dekompilierung eines anderen zu verwenden - ich habe genug eigenen Code, und was ich nicht habe, schreibe ich selbst oder stehle es aus der Codebasis hier, aber meine Meinung ist folgende:

1. Wie auch immer, diese Einschränkung wird kaum funktionieren, da es ziemlich schwierig ist, menschlichen Code von Automatencode zu unterscheiden. In diesem Fall (so wie ich es verstehe) wird die Überprüfung der Variablennamen auf Ähnlichkeit mit den dekompilierten verwendet, und es kann nur absolut Anfänger und nicht hartnäckige Programmierer beschränken. Als jemand, der seit vielen Jahren mit Code arbeitet, werde ich Folgendes sagen - diese Art von Überprüfung kann auf mindestens fünf Arten erfolgen - eine davon ist bereits involviert - Kontrolle der Variablensyntax, den Rest werde ich nicht nennen - weil es keinen Sinn hat ;) Das wird aber nur dazu führen, dass dieser "Schutz" entweder relativ leicht zu umgehen ist, oder dass er anfängt, über legitimen Code zu lästern, und das ist schon jetzt mit Problemen behaftet.

2. Warum zum Teufel haben die Entwickler entschieden, welchen Code Sie verwenden dürfen und welchen nicht? Ich bin nicht an einer "sozialen" Antwort interessiert, sondern an einer Antwort, die sich auf Gesetzesartikel oder andere Rechtsakte bezieht. Haben die Bauherren das Recht, ein solches Gutachten zu erstellen, noch dazu ein so plumpes? Ich bin der Meinung, dass die Verwendung des Codes eines anderen nur den Eigentümer und auf dessen Anordnung vielleicht sogar die Strafverfolgungsbehörden betreffen sollte. und das ist alles.

IMHO ist es nicht gut, in fremden Gärten herumzustochern, besonders wenn es die Person, die es tut, nicht betrifft...