e di nuovo dll e mercato - pagina 3

 
Roman:

Quindi siete voi che state preparando un articolo sul motore vocale?
Come sta andando, l'articolo sarà pubblicato?

Ho mandato una bozza a Renat, finora nessuna notizia)

 
Реter Konow:
Attraverso le risorse. Ecco come ho fatto.

Può dirmi di più?

Anche io non capisco di winapi. Nel mio caso ho bisogno della funzione CopyFileW dakernel32.dll e della funzione ShellExecuteW da shell32.dll

Non riesco a trovare analoghi in <winapi\fileapi.mqh>.

 
Nikolai Karetnikov:

Può dirmi di più?

Anche io non capisco di winapi. Nel mio caso ho bisogno della funzione CopyFileW dakernel32.dll e della funzione ShellExecuteW da shell32.dll

Non riesco a trovare analoghi in <winapi\fileapi.mqh>.

Ecco un articolo sullafunzione CopyFileWhttps://www.mql5.com/ru/articles/2552

CopyFileW- copia i file da e verso la sandbox MQL5.

LifeHack для трейдера: один бэк-тест хорошо, а четыре – лучше
LifeHack для трейдера: один бэк-тест хорошо, а четыре – лучше
  • www.mql5.com
Перед каждым трейдером при первом одиночном тестировании встает один и тот же вопрос — "Какой же из четырех режимов использовать?" Каждый из предлагаемых режимов имеет свои преимущества и особенности, поэтому сделаем проще — запустим сразу все режимы одной кнопкой! В статье показано, как с помощью Win API и небольшой магии увидеть одновременно...
 

Non capisco, sta scrivendo un articolo per il sito o un prodotto per il mercato?

gli articoli e il codice sorgente allegato sono ovviamente ammissibili WinAPI, è la divulgazione delle capacità del terminale

"forse il comitato di redazione darà un'occhiata veloce per vedere se le chiamate sono usate per qualcosa di brutto e si può fare a meno di loro.

Ma per il mercato, #import "dll-name" non funzionerà sicuramente.

 
Nikolai Karetnikov:

Può dirmi di più?

Anche io non capisco di winapi. Nel mio caso ho bisogno della funzione CopyFileW dakernel32.dll e della funzione ShellExecuteW da shell32.dll

Non riesco a trovare analoghi in <winapi\fileapi.mqh>.

Comunque, esiste una cosa come le risorse. Leggete di più nella documentazione. Oltre alla connessione di file e immagini dall'esterno, il programma mql può scrivere dati alle risorse interne in fase di esecuzione e questi dati possono essere visibili ad altri programmi su altri grafici, se l'altro programma "conosce" il percorso della risorsa del primo programma. In questo modo entrambi i programmi possono "comunicare" - scambiarsi dati fino a 16ms.
Essenzialmente, le risorse possono essere utilizzate come memoria condivisa per i programmi.

Se il primo programma (commercializzato) funziona con le risorse e il secondo programma (aperto) le legge e chiama la dll, allora il problema è risolto.

Ma le regole del mercato proibiscono di creare dipendenze di prodotti esterni. Se ci fosse un'opzione invece di una dipendenza, allora forse.
 
Alexsandr San:

Ecco un articolo sullafunzione CopyFileWhttps://www.mql5.com/ru/articles/2552

CopyFileW- copia i file da e verso la sandbox MQL5.

è surreale ))

L'articolo descrive le chiamate da dll di sistema importate nel codice. Nel mio codice questo è esattamente quello che succede nel codice.

Dopo questo post

Alexey Volchanskiy:

La frase sottolineata può essere decodificata? )) Ho fatto dei wrapper per la maggior parte delle funzioni API di Win molto tempo fa. Potete usarli nel Mercato. Ho chiesto a Renat i dettagli.

\MQL5\Include\WinAPI\...


Ho pensato che con l'aiuto delle librerie winapi si può evitare la necessità di accedere direttamente alla DLL, e quindi evitare la necessità di collegare la DLL al codice e, quindi, essere in grado di visualizzare il codice con funzioni winapi nel Market.

Mi sono sbagliato?

 
Nikolai Karetnikov:


Mi sono sbagliato?

Sì, tutte le chiamate WinApi da Mql sono fatte dopo aver collegato le Dll di sistema.
Le funzioni di Windows sono chiamate da queste Dll.

 
Maxim Kuznetsov:

Non capisco, sta scrivendo un articolo per il sito o un prodotto per il mercato?

gli articoli e il codice sorgente allegato sono ovviamente ammissibili WinAPI, è la divulgazione delle capacità del terminale

"forse il comitato di redazione darà un'occhiata veloce per vedere se le chiamate sono usate per qualcosa di brutto e si può fare a meno di loro.

ma per il mercato, #import "dll-name" non funzionerà.

l'articolo potrebbe riguardare la versione base del prodotto

 
Nikolai Karetnikov:

...

Mi sono sbagliato?

Fate una prova. Provare, come si dice, non è una tortura).
Poi, ditemi qui se ha funzionato o no.
 
Реter Konow:
Comunque, esiste una cosa come le risorse. Leggete di più nella documentazione. Oltre al collegamento di file e immagini dall'esterno, il programma mql può scrivere dati nelle risorse interne in fase di esecuzione e questi dati possono essere visibili ad altri programmi su altri grafici, se l'altro programma "conosce" il percorso della risorsa del primo programma. In questo modo entrambi i programmi possono "comunicare" - scambiarsi dati fino a 16ms.
Essenzialmente, le risorse possono essere usate come memoria condivisa per i programmi.

Se il primo programma (mercato) gestisce le risorse e il secondo programma (aperto) le legge e chiama la dll, allora il problema è risolto.

Ma le regole del mercato proibiscono di creare dipendenze di prodotti esterni. Se ci fosse un'opzione invece di una dipendenza, allora forse.

Il Market Advisor sarebbe in grado di scrivere un file di testo come risorsa?

Poi formerei il file con codice chiuso, e cambierei l'estensione con codice aperto e lo riprodurrei

Motivazione: