Errori, bug, domande - pagina 2456

 
Vladimir Karputov:
Leggi Aiuto. Leggi "FAQ sul servizio Segnali". Guarda il video di aiuto sul servizio Signals.
E al momento consiglio vivamente di SCONSIGLIARE la copia del segnale su questo conto di trading nei terminali locali desktop: avete un VPS che lavora per la copia del segnale.
È meglio non aprire Metatrader sul telefono? O è irrilevante per esso?
 
FidelM:
È meglio non aprire Metatrader sul telefono? O è irrilevante?

Puoi aprire un terminale sul tuo PC locale o sul tuo telefono - hai bisogno di monitorare le transazioni, vero? L'importante è non avere una situazione in cui l'abbonamento al segnale sia acceso allo stesso tempo su due terminali.

 
Ilyas:

Forum sul trading, sistemi di trading automatico e test di strategie di trading

Bug, bug, domande

Alexey Kozitsyn, 2019.05.03 11:24

Non è possibile inserire in memoria un file con # nel suo nome. È un comportamento normale o un bug?

 
Durante la compilazione del progetto in ME (build 2025), Win10 si è bloccato (nessun minidump).

Dopo aver riavviato il PC, il file include del progetto (*.mqh) era completamente vuoto (tutti i dati sono stati sovrascritti quindi NUL (0x00)).
Ma che diavolo?
Fate dei backup, se la compilazione del codice può far cadere i dati dell'utente per sempre, questo non è il caso.
 
Alexey Kozitsyn:


Un file con un # nel suo nome non può essere aggiunto all'archivio. È un comportamento normale o un bug?

Grazie per il messaggio, lo controlleremo.
 
I commenti non relativi a questo argomento sono stati spostati in "Domande dai principianti di MQL4 MT4 MetaTrader 4".
 
Sergey Dzyublik:
Durante la compilazione del progetto in ME (build 2025), Win10 è andato in crash (nessun mini-dump).

Dopo aver riavviato il PC, il file di progetto (*.mqh) è risultato essere completamente vuoto (tutti i dati sono stati sovrascritti con NUL (0x00)).
Ma che diavolo?
Fate dei backup, se la compilazione del codice può far cadere i dati dell'utente per sempre, questo non è il caso.

Che tipo di errore è stato indicato nel BSOD?
Quanto spesso si verifica questo comportamento?

Ne ho sentito parlare da un conoscente, quando lavorando in VS, alla compilazione (molto raramente, non più di una volta al mese) c'era un BSOD, dopo il quale il contenuto dei file sorgente sembrava essere riempito di zeri.
Non ricordo i dettagli, ma è stato risolto sostituendo il PC.

Il compilatore MQL non usa trucchi "difficili" e legge il contenuto dei file di compilazione in modo semplice e affidabile:

  1. Aprire il file per la lettura
  2. Determinare la dimensione e allocare il buffer
  3. Leggi il contenuto
  4. Chiudi il file e solo dopo potrai analizzarlo
Controllerò due volte come vengono salvati i file prima di iniziare la compilazione.


Se l'errore si verifica frequentemente, prova per esempio a disabilitare l'antivirus
 
Ilyas:

Quale errore è stato indicato nel BSOD?

Grazie mille per la risposta dettagliata.
Il BSOD era sotto forma di un riavvio del PC, quindi nessun codice di errore o file minidump.
Niente di interessante nei log degli eventi (lo standard "Il sistema si è riavviato senza prima spegnersi in modo pulito...").

Il problema della cancellazione del file non è nuovo, è successo 3 anni fa su Windwos 7, il codice sorgente del file mq4 è stato cancellato durante la compilazione/debug durante il BSOD.
Anche circa 2 anni fa un utente ha segnalato questo problema sul forum, purtroppo non è stato possibile trovare alcun commento.


Quanto spesso si verifica questo comportamento?

Nessun BSOD per circa 9 mesi, ma questo è il 3° nell'ultima settimana (una volta BSOD con MEMORY CORRUPTION nel processo del kernel, la seconda era il blocco di Windows, oggi riavvio durante la compilazione/debug in MT).
A parte skype non è stato installato nulla di nuovo, rimuoverlo non ha aiutato.

Il problema del wipe si verifica quando un arresto non standard di Windows colpisce la compilazione/debug di MT.
Oggi il lavoro effettivo è stato sovrascritto, non un pezzo di codice di prova come prima (qualche anno fa) - quindi c'è una reazione all'incidente.

 
Ilyas:
Se l'errore si verifica spesso, prova a disabilitare l'antivirus, per esempio

Il problema è avere questo problema, non trovare un workaround.


Controllerò due volte come vengono salvati i file prima di iniziare la compilazione.

Non è difficile per me cercarlo da solo,
Sfortunatamente mi manca completamente la conoscenza del comportamento dei crash del sistema operativo, quindi assumeremo in base al risultato - tutti i dati di origine *.mqh sono sovrascritti a 0x00.


Cosa succede quando si compila il progetto in MT5 (build 2025):
1. La prima cosa che mi salta all'occhio è che passo attraverso tutte le schede in ME e scrivo flussi NTFS per ognuno dei file aperti.

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

Ho > 50 schede aperte di cui ho 8 file di progetto.
Come risultato per la compilazione di un progetto otteniamo (8 + 50) * 2 = 116 file NTFS sovrascritti di 440 byte ciascuno.
Su SSD questo richiede 0,2 secondi.

2. Se si trova un file con delle modifiche ed esiste sul disco, viene sovrascritto con nuovi dati dalla memoria.
La sovrascrittura avviene per tutti i file modificati, non importa se sono di questo progetto o meno.

Molto probabilmente, come risultato del crash Windows viene cancellato dalla memoria, allocata in ME per l'origine *.mqh, ma il thread che esegue la scrittura sul file continua il suo lavoro.
Di conseguenza, quando si salvano le modifiche su file, il numero di byte da scrivere è corretto, ma il riferimento punta alla memoria già liberata, sovrascrivendo il codice sorgente in \x00.

 

Dopo aver cambiato la password dell'account, non è possibile accedere a metaeditor con la nuova password e accedere al repository

Se riavrai la tua password, potrai accedere di nuovo

Non è uno scherzo o una storia vera, è un avviso di errore. Prova a cambiare la password tramite il sito web e poi accedi al repository tramite metaeditor.

Motivazione: