Fehler, Irrtümer, Fragen - Seite 2456

 
Vladimir Karputov:
Hilfe lesen. Lesen Sie "FAQ zum Signaldienst". Sehen Sie sich die Video-Hilfe zum Dienst "Signale" an.
Und für die Zeit, ich empfehle dringend zu DISCONNECT Signal Kopieren auf diesem Handelskonto in Desktop-lokalen Terminals: Sie haben ein VPS läuft, um Signale zu kopieren.
Ist es besser, Metatrader nicht auf dem Handy zu öffnen? Oder ist es für sie irrelevant?
 
FidelM:
Ist es besser, Metatrader nicht auf dem Handy zu öffnen? Oder ist das irrelevant?

Sie können ein Terminal auf Ihrem lokalen PC oder auf Ihrem Telefon öffnen - Sie müssen den Handel überwachen, nicht wahr? Das Wichtigste ist, dass das Signalabonnement nicht gleichzeitig an zwei Terminals eingeschaltet wird.

 
Ilyas:

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

Wanzen, Wanzen, Fragen

Alexey Kozitsyn, 2019.05.03 11:24

Es ist nicht möglich, eine Datei mit # in ihrem Namen in den Speicher einzugeben. Ist dieses Verhalten normal oder ein Fehler?

 
Beim Kompilieren des Projekts in ME (Build 2025) stürzte Win10 ab (kein Minidump).

Nach dem Neustart des PCs war die Projekt-Include-Datei (*.mqh) komplett leer (alle Daten wurden mit NUL (0x00) überschrieben).
Was zum Teufel?
Machen Sie Backups, wenn das Kompilieren von Code Benutzerdaten für immer löschen kann, ist dies nicht der Fall.
 
Alexey Kozitsyn:


Eine Datei mit einem # in ihrem Namen kann nicht zum Speicher hinzugefügt werden. Ist dieses Verhalten normal oder ein Fehler?

Danke für die Nachricht, wir werden uns das ansehen.
 
Kommentare, die sich nicht auf dieses Thema beziehen, wurden nach "Fragen von MQL4 MT4 MetaTrader 4 Anfängern" verschoben.
 
Sergey Dzyublik:
Beim Kompilieren des Projekts in ME (Build 2025) stürzte Win10 ab (kein Mini-Dump).

Nach einem Neustart des PCs stellte sich heraus, dass die Projektdatei (*.mqh) völlig leer war (alle Daten wurden mit NUL (0x00) überschrieben).
Was zum Teufel?
Machen Sie Backups, wenn das Kompilieren von Code die Benutzerdaten für immer verlieren kann, ist das nicht der Sinn der Sache.

Welche Art von Fehler wurde bei dem BSOD angezeigt?
Wie oft tritt dieses Verhalten auf?

Ich habe von einem Bekannten gehört, dass es bei der Arbeit mit VS beim Kompilieren (sehr selten, nicht mehr als einmal im Monat) einen BSOD gab, nach dem der Inhalt der Quelldateien mit Nullen gefüllt zu sein schien.
Ich erinnere mich nicht mehr an die Einzelheiten, aber das Problem wurde durch den Austausch des PCs gelöst.

Der MQL-Compiler verwendet keine "trickreichen" Tricks und liest den Inhalt der Kompilationsdateien auf einfache und zuverlässige Weise:

  1. Datei zum Lesen öffnen
  2. Größe bestimmen und Puffer zuweisen
  3. Inhalt lesen
  4. Schließen Sie die Datei, und erst dann können Sie sie auswerten
Ich werde noch einmal überprüfen, wie die Dateien gespeichert werden, bevor ich mit der Kompilierung beginne.


Wenn der Fehler häufig auftritt, versuchen Sie zum Beispiel, das Antivirusprogramm zu deaktivieren
 
Ilyas:

Welcher Fehler wurde beim BSOD angezeigt?

Vielen Dank für die ausführliche Antwort.
Der BSOD trat in Form eines PC-Neustarts auf, also ohne Fehlercode oder Minidump-Datei.
Nichts Interessantes in den Ereignisprotokollen (der Standard "Das System wurde neu gestartet, ohne vorher sauber herunterzufahren...").

Das Problem des Löschens der Datei ist nicht neu, es passierte vor 3 Jahren unter Windwos 7, der Quellcode der mq4-Datei wurde während der Kompilierung/Debugging während BSOD gelöscht.
Auch vor ca. 2 Jahren hat ein Benutzer dieses Problem im Forum gemeldet, leider konnte kein Kommentar gefunden werden.


Wie oft tritt dieses Verhalten auf?

Seit etwa 9 Monaten kein BSOD mehr, aber dies ist der dritte in der letzten Woche (einmal BSOD mit MEMORY CORRUPTION im Kernel-Prozess, der zweite war ein Einfrieren von Windows, heute Neustart während des Kompilierens/Debuggens in MT).
Abgesehen von Skype wurde nichts Neues installiert, und das Entfernen von Skype hat auch nicht geholfen.

Das Wipe-Problem tritt auf, wenn ein nicht standardmäßiges Herunterfahren von Windows die MT-Kompilierung/Debug-Funktion beeinträchtigt.
Heute wurde die eigentliche Arbeit überschrieben, nicht wie früher (vor ein paar Jahren) ein Teststück des Codes - es gibt also eine Reaktion auf den Vorfall.

 
Ilyas:
Wenn der Fehler häufig auftritt, versuchen Sie, das Antivirenprogramm zu deaktivieren, z. B.

Das Problem besteht darin, dieses Problem zu haben, nicht darin, eine Lösung zu finden.


Ich werde noch einmal überprüfen, wie die Dateien gespeichert werden, bevor ich mit der Kompilierung beginne.

Es ist nicht schwer für mich, selbst nachzuschlagen,
Leider fehlt mir jegliches Wissen über das Absturzverhalten des Betriebssystems, so dass wir aufgrund des Ergebnisses davon ausgehen, dass alle *.mqh-Quelldaten mit 0x00 überschrieben werden.


Was passiert, wenn Sie das Projekt in MT5 kompilieren (Build 2025)?
1. Das erste, was mir auffällt, ist, dass ich alle Registerkarten in ME durchlaufe und NTFS-Streams für jede der geöffneten Dateien schreibe.

*.mqh:CursorPos:$DATA   // положение курсора (строка, столбец) + первая видимая строка при scroll-е.
*.mqh:LineFlags:$DATA   // не понятно для чего

Ich habe mehr als 50 Registerkarten geöffnet, von denen ich 8 Projektdateien habe.
Das Ergebnis für eine Projektkompilierung sind (8 + 50) * 2 = 116 überschriebene NTFS-Streams-Dateien mit jeweils 440 Byte.
Auf einer SSD dauert dies 0,2 Sekunden.

2. Wenn Sie eine Datei mit Änderungen finden und diese auf der Festplatte existiert, wird sie mit neuen Daten aus dem Speicher überschrieben.
Das Überschreiben erfolgt für alle geänderten Dateien, unabhängig davon, ob sie aus diesem Projekt stammen oder nicht.

Höchstwahrscheinlich wird als Folge des Absturzes der in ME für die Quelle *.mqh zugewiesene Speicher von Windows geleert, aber der Thread, der das Schreiben in die Datei durchführt, setzt seine Arbeit fort.
Dies hat zur Folge, dass beim Speichern von Änderungen in einer Datei die Anzahl der zu schreibenden Bytes zwar korrekt ist, der Verweis aber auf einen bereits gelöschten Speicher verweist, wodurch der Quellcode in \x00 überschrieben wird.

 

Nach dem Ändern des Kontopassworts ist es nicht möglich, sich mit dem neuen Passwort bei metaeditor anzumelden und auf das Repository zuzugreifen

Wenn Sie Ihr Passwort zurückbekommen, können Sie sich wieder anmelden

Das ist kein Witz oder eine Lebensgeschichte, sondern eine Fehlermeldung. Versuchen Sie einfach, das Passwort über die Website zu ändern und sich dann über den Metaeditor in das Repository einzuloggen.