MetaTrader 4 Build 529 beta rilasciato con un nuovo compilatore - pagina 33

 
Barbarian:

A proposito, diversi post mi hanno già punzecchiato con questa cosa dell'UAC. Per la cronaca, aiuto da Microsoft:

Finché stai con UAC disabilitato e sotto l'amministratore, personalmente non vedi un problema. Ma noi sì, visto che abbiamo milioni di terminali installati che hanno già problemi a causa delle restrizioni dei permessi.

Capire dove e come i programmi sono ora autorizzati a scrivere su Windows vi verrà in mente non appena inizierete a distribuire il vostro software nel mondo.

Gli hash nei nomi delle directory non saranno cambiati - tutto questo funziona in modo simile in MT5. Manteniamo deliberatamente entrambe le piattaforme il più unificate possibile.

 
Renat:

Finché sei seduto con UAC disabilitato e sotto l'amministratore, personalmente non vedi alcun problema. Ma noi sì, perché abbiamo milioni di terminali installati che hanno già problemi a causa delle restrizioni dei permessi.

Capire dove e come i programmi sono ora autorizzati a scrivere su Windows vi verrà in mente non appena inizierete a distribuire il vostro software nel mondo.

Glihash nei nomi delle directory non saranno cambiati - tutto questo funziona allo stesso modo per MT5. Manteniamo deliberatamente entrambe le piattaforme il più unificate possibile.

Capisco, grazie.

È possibile fare un accesso simultaneo a cartelle e file sia locali che condivisi? Voglio dire che posso vedere sia le cartelle e i file locali nel navigatore che quelli condivisi. In modo che dopo la compilazione, il file eseguibile si trovi nella stessa cartella del sorgente e il terminale possa vederli. Quindi l'utente finale non ha bisogno di sapere dove si trova quel file, il suo terminale vede questi file e ci lavora, e il programmatore sa dove sono i sorgenti e ci lavora facilmente, anche se si trovano fisicamente sia nella cartella condivisa che in quella locale. Poi per ogni terminale, sarà possibile creare "un ordine diverso" - qualcosa è nelle cartelle locali del terminale e solo quei terminali, che hanno questi file, possono vederlo, e qualcosa è nelle cartelle condivise - e questi file possono essere visti da tutti i terminali contemporaneamente. ME, invece, vede sia le cartelle condivise che quelle locali, che nel suo navigatore può semplicemente aprire, ma quando compila metterà l'eseguibile nella cartella del sorgente.

???

 

artmedia70:

....

ME, invece, vede sia le cartelle condivise che quelle locali, che nel suo navigatore possono essere semplicemente aperte, ma quando compila metterà l'eseguibile nella cartella di origine.

È qui che potrebbe esserci il problema con le versioni terminali. È meglio configurare la posizione di destinazione in modo appropriato.

Oppure (io lo farei) in fase di compilazione aggiungere un suffisso al nome del file con la versione del compilatore. Come MACross.b509.ex4 Sì, il nome è allungato, ma è informativo e risolve molto universalmente i problemi con le versioni dei terminali.

 

artmedia70:

...quindi non fare il bullo. Va bene?

Ci siamo capiti. :)
 
MetaDriver:

Questo è solo il problema con le versioni dei terminali può essere. È meglio impostare il luogo di destinazione secondo le circostanze.

Oppure (io lo farei) in fase di compilazione aggiungere il suffisso della versione del compilatore al nome del file. Come MACross.b509.ex4 Sì, il nome è allungato, ma è informativo e risolve molto universalmente i problemi con le versioni dei terminali.

È già abbastanza problematico mantenere più versioni del terminale - si aggiornano tutte dopo averne aggiornata una.

Non credo che dovremmo fare affidamento su questo.

Ma una cartella comune per i sorgenti sarebbe utile, soprattutto tenendo conto di #ifdef e della possibilità di scrivere librerie universali (4-5).

 
MetaDriver:
Affare fatto. :)

Affare fatto ;)
 

Ora il compilatore, se ci sono funzioni inutilizzate, non dà un avviso che ci sono e saranno escluse dall'eseguibile. Rimarrà così?

Ora ci sono avvertimenti sulle variabili inutilizzate (molto utili, grazie).

 
artmedia70:

Ora il compilatore, se ci sono funzioni inutilizzate, non dà un avviso che ci sono e saranno escluse dall'eseguibile. Rimarrà così?

Sì, lo farà.

Dato l'uso attivo delle librerie, non è più possibile emettere tali messaggi. Tante funzioni possono essere inutilizzate. Naturalmente, tutte le funzioni inutilizzate vengono rimosse.

 
komposter:

È già abbastanza problematico mantenere più versioni del terminale - si aggiornano tutte dopo averne aggiornata una.

Non credo che dovremmo fare affidamento su questo.

Non ha pensato di impegnarlo. Solo i casi sono diversi. Per esempio, il beta testing... :)


Ma una cartella condivisa per i sorgenti sarebbe utile, specialmente considerando #ifdef e la possibilità di scrivere librerie universali (4-5).

Beh, sì. Una continuazione molto logica dello sviluppo della funzionalità.
 

Tuttavia, non è più possibile cambiare i valori delle variabili esterne che sono state originariamente assegnate durante l'esecuzione del programma, vero?

Non è molto conveniente. Dovrò crearne un altro...

Motivazione: