Discussione su "Come scrivere una DLL per MQL5 e scambiare dati in 10 minuti". - pagina 8

Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Dichiarazione di funzione DLL
Chiamare una funzione DLLNell'ultimo esempio, hai anche fatto alcune modifiche alla DLL, vero?
Questo è quello che voglio dire.
Potresti anche darmi un suggerimento, se non è troppo disturbo. C'è un dll, gli viene passato un valore di testo, l'output è un numero di tipo stringa
Per esempio così:
Non posso riparare il dll a causa della mancanza di conoscenza. Per favore, consigliate come fare un codice corretto per passarlo a dll, e come riceverlo correttamente. Ho la sensazione che la mia DLL non funzionerà in MT5.
Grazie in anticipo per l'aiuto.
Potresti anche darmi un suggerimento, se non è troppo disturbo. C'è un dll, gli viene passato un valore di testo, l'output è un numero di tipo stringa
Non posso riparare la DLL per mancanza di conoscenza. Si prega di consigliare come scrivere correttamente il codice per sottoporlo alla dll, e come ottenerlo correttamente. Perché la mia dll non funziona in MT5 al momento.Grazie in anticipo per il vostro aiuto.
Ho ricontrollato il lavoro con il ritorno delle stringhe dalla DLL e ho trovato l'errore in x64 (apparso dopo alcune ottimizzazioni). La correzione sarà inclusa nella prossima build.
Se stai lavorando in x64, per favore aspetta il rilascio della build.
L'unica cosa che posso aggiungere è ricordare che MQL5 funziona con stringhe Unicode.
Articolo pubblicato Come scrivere una DLL per MQL5 in 10 minuti e scambiare dati?:
Autore: Renat Fatkhullin
Grazie per l'articolo. L'ho già usato.
La punta è molto buona. Ma! Mi ci sono voluti 10 minuti per capire come impostare correttamente il percorso della DLL in VS2010.
Si è rivelato essere così:
C:\Users\пп\AppData\Roaming\MetaQuotes\Terminal\D0E8209F77C8CF37AD8BF550E51FF075\MQL5\Libraries
Suggerisco di copiare il percorso da MetaEditor.
Oppure specificate il vostro percorso nell'ambiente (non l'ho controllato).
E un'altra cosa, come facciamo con il multithreading?
Grazie per l'articolo. Ripetuto per intero, ma voglio dire qualche parola su ciò che ho incontrato durante l'implementazione - queste cose apparentemente piccole mi hanno quasi scoraggiato. Quello che volevo chiarire (usando VS2010 + MT5 (32 bit) build 756 + Win 7 Maximum x64):
Altrimenti non è un cattivo articolo... Rispetto!
Su MT5 a 64 bit l'esempio non funziona. Il terminale segnala che è una DLL a 32 bit e non la collega. Ma sotto Win32 (come in questo esempio e in tutti gli altri esempi - come in Delphi) - tutte le DLL sono a 32 bit. Come nel post precedente, devo disinstallare la versione a 64 bit del terminale e installare quella a 32 bit. Ho anche bisogno di sapere come farlo visto che la versione a 64 bit è installata per forza. Si scopre che MT5 64 bit è un terminale morto, non so perché viene rilasciato. Cari sviluppatori, se è possibile, per favore rendete possibile collegare una DLL a 32 bit a МТ5 64 bit.
Se questo è tecnicamente impossibile o difficile, scrivete le insidie che questa versione non funzionerà con DLL a 32 bit e gli utenti soffrono e non possono capire cosa c'è di sbagliato. E scrivere apertamente che la cartella Librerie non è nelle directory del terminale stesso, e sa dove, e senza esperienza non troverà, non provare nemmeno. A proposito, in questo luogo segreto ci sono tutti gli indicatori e gli esperti, quindi installando MT5 potete dimenticarvene - se non sapete che tutto questo si trova in una cartella nascosta C:-Users\nAppData\Roaming... ...o l'utente pensa di installare un programma scritto normalmente, il che è un imbroglio.
Dovresti migliorare il tuo livello tecnico.
Per i programmi a 64 bit avete bisogno di librerie a 64 bit e non c'è modo di collegare librerie a 32 bit in modo ragionevole. Per installare la versione a 32 bit, il programma di installazione deve essere eseguito con lo switch /32
Riscriverò l'articolo e aggiungerò caratteristiche interessanti che sono state implementate da tempo in MetaEditor e nelle piattaforme MT4 e MT5. Molti sviluppatori non sono a conoscenza delle nuove caratteristiche.