Errori, bug, domande - pagina 2444

 
Sergey Dzyublik:

Abbassare l'aggressività.

 
fxsaber:

Sul lato sviluppatore, tutto ciò che serve è la volontà, dato che ci vuole un minuto per farlo.

Basta dare l'hash del codice nativo prima dell'"offuscamento" in EX5.

Beh, cambia anche senza cambiare il codice, se ho capito bene.
 
Andrey Khatimlianskii:
Beh, cambia anche senza modifiche al codice, se ho capito bene.

Il risultato della compilazione è sempre lo stesso. Non c'è casualità.

E poi questo risultato viene spinto a EX5, dove la protezione è a caso.

 
fxsaber:

Per quanto riguarda la rimozione degli spazi extra, il problema si risolve in 4 righe in stile SQL:

   string test = "AB C  D   E    F     G";
   Print(test);
   
   string delimeter = "{}?##%%";
   StringReplace(test, "  ", " " + delimeter);
   StringReplace(test, delimeter + " ", "");
   StringReplace(test, " " + delimeter, " ");

   Print(test);

Risultato:

2019.04.24 15:08:09.150 Test (EURUSD,H1)        AB C  D   E    F     G
2019.04.24 15:08:09.150 Test (EURUSD,H1)        AB C D E F G



La cosa principale è il desiderio, come si dice.

 
Sergey Dzyublik:

Per quanto riguarda la rimozione degli spazi extra, il compito si risolve in 4 righe in stile SQL:

string test = "AB C  D \"   \"  E    F     G";
 
fxsaber:

Il risultato della compilazione è sempre lo stesso. Non c'è casualità.

E poi questo risultato viene scaricato in EX5, dove la protezione è a caso.

E un checksum che non dipende dai cambiamenti in ex5 entra in opt?

Allora sì, gli sviluppatori potrebbero darvi accesso.

 
fxsaber:

Devi risolvere un problema o trovare una ragione per non risolverlo?

 
Andrey Khatimlianskii:

E opt ottiene un checksum che è indipendente dai cambiamenti di ex5?

No, è ex5 che entra in opt. Questo è il motivo per cui la ricompilazione resetta la cache del tester.

 
Sergey Dzyublik:

Devi risolvere un problema o trovare una ragione per non risolverlo?

Il compito è stato espresso. Ho bisogno che il risultato dell'esecuzione del programma venga resettato in un file con un nome diverso quando la logica (codice nativo) viene cambiata.

 

Il programma non funziona, ho scoperto per esperienza che si blocca su questa linea:

boost::asio::connect(*socket_, endpoint); (da tick_receiver.cpp )

da questa funzione:


_DLLAPI int __stdcall client_connect(int port){ // nessuna dimensione variabile qui per questo errore


boost::asio::ip::tcp::resolver resolver(io);

boost::asio::ip::tcp::resolver::results_type endpoint = resolver.resolve("127.0.0.1", std::to_string(port));

boost::asio::connect(*socket_, endpoint); // qui cade

ritorno 1;

}



2019.04.24 15:17:45.306 test_tick_receiver (EURUSD,H1) Violazione di accesso a 0x00007FFC1AF29200 letto a 0x0000000000000000 in 'C:\Users\rukpe\AppData\Roaming\MetaQuotes\Terminal\D0E8209F77C8CF37AD8BF550E51FF075\MQL5Experts\tick_receiver.dll'

2019.04.24 15:17:45.338 test_tick_receiver (EURUSD,H1) crash --> 00007FFC1AF29200 498B4D00 mov rcx, [r13+0x0]

2019.04.24 15:17:45.338 test_tick_receiver (EURUSD,H1) 00007FFC1AF29204 33C0 xor eax, eax

2019.04.24 15:17:45.338 test_tick_receiver (EURUSD,H1) 00007FFC1AF29206 49837D08FF cmp qword [r13+0x8], 0xff

2019.04.24 15:17:45.338 test_tick_receiver (EURUSD,H1) 00007FFC1AF2920B 742D jz 0x7ffc1af2923a

2019.04.24 15:17:45.338 test_tick_receiver (EURUSD,H1)

2019.04.24 15:17:45.338 test_tick_receiver (EURUSD,H1) 00007FFC1AF2920D 33D2 xor edx, edx

2019.04.24 15:17:45.338 test_tick_receiver (EURUSD,H1) 00007FFC1AF2920F F0480FB15138 lock cmpxchg [rcx+0x38], rdx

2019.04.24 15:17:45.338 test_tick_receiver (EURUSD,H1) 00007FFC1AF29215 740C jz 0x7ffc1af29223

2019.04.24 15:17:45.338 test_tick_receiver (EURUSD,H1)

2019.04.24 15:17:45.338 test_tick_receiver (EURUSD,H1)

2019.04.24 15:17:45.338 test_tick_receiver (EURUSD,H1) 00: 0x00007FFC1AF29200

2019.04.24 15:17:45.338 test_tick_receiver (EURUSD,H1) 01: 0x000001BA759C1F40

2019.04.24 15:17:45.338 test_tick_receiver (EURUSD,H1) 02: 0xFFFFFFFFFFFFFFFFFFFFFF

2019.04.24 15:17:45.338 test_tick_receiver (EURUSD,H1) 03: 0x000001BA6E450000

2019.04.24 15:17:45.338 test_tick_receiver (EURUSD,H1) 04: 0x000001BA7575C5A0

2019.04.24 15:17:45.338 test_tick_receiver (EURUSD,H1) 05: 0x0000002E16AFE670

2019.04.24 15:17:45.338 test_tick_receiver (EURUSD,H1) 06: 0x00000FED243F54C5

2019.04.24 15:17:45.338 test_tick_receiver (EURUSD,H1) 07: 0x000001BA6E452000

2019.04.24 15:17:45.338 test_tick_receiver (EURUSD,H1) 08: 0x00007FF7DAEC6000

2019.04.24 15:17:45.338 test_tick_receiver (EURUSD,H1)


File:
1.zip  54 kb