MetaTrader 4 Build 529 beta publié avec un nouveau compilateur - page 33

 
Barbarian:

D'ailleurs, plusieurs messages m'ont déjà interpellé sur cette histoire d'UAC. Pour mémoire, l'aide de Microsoft :

Tant que vous êtes assis avec l'UAC désactivé et sous l'administrateur, vous ne voyez personnellement pas de problème. Mais nous le faisons, car nous avons des millions de terminaux installés qui ont déjà des problèmes en raison des restrictions d'autorisation.

Comprendre où et comment les programmes sont désormais autorisés à écrire dans Windows vous sera utile dès que vous commencerez à distribuer vos logiciels dans le monde entier.

Les hachages dans les noms de répertoire ne seront pas modifiés - tout cela fonctionne de la même manière dans MT5. Nous faisons en sorte que les deux plateformes soient aussi unifiées que possible.

 
Renat:

Tant que vous êtes assis avec l'UAC désactivé et sous l'administrateur, vous ne voyez personnellement aucun problème. Mais nous le faisons, car nous avons des millions de terminaux installés qui ont déjà des problèmes en raison des restrictions d'autorisation.

Comprendre où et comment les programmes sont désormais autorisés à écrire dans Windows vous sera utile dès que vous commencerez à distribuer vos logiciels dans le monde entier.

Les hachages dans les noms de répertoire ne seront pas modifiés - tout cela fonctionne de la même manière pour MT5. Nous faisons en sorte que les deux plateformes soient aussi unifiées que possible.

Je vois, merci.

Est-il possible d'accéder simultanément aux dossiers et fichiers locaux et partagés ? Je veux dire que je peux voir à la fois les dossiers et fichiers locaux dans le navigateur et les dossiers et fichiers partagés. Ainsi, après la compilation, le fichier exécutable se trouve dans le même dossier que la source et le terminal peut les voir. Ainsi, l'utilisateur final n'a pas besoin de savoir où se trouve ce fichier, son terminal voit ces fichiers et travaille avec eux, et le programmeur sait où se trouvent les sources et travaille facilement avec elles, même si elles sont physiquement situées à la fois dans le dossier partagé et dans le dossier local. Ensuite, pour chaque terminal, il sera possible de créer "un ordre différent" - quelque chose se trouve dans les dossiers locaux du terminal et seuls les terminaux qui possèdent ces fichiers peuvent le voir, et quelque chose se trouve dans les dossiers partagés - et ces fichiers peuvent être vus par tous les terminaux à la fois. ME, d'autre part, voit à la fois les dossiers partagés et locaux, qui dans son navigateur peuvent simplement être ouverts, mais lors de la compilation, il mettra l'exécutable dans le dossier de la source.

? ??

 

artmedia70:

....

ME, en revanche, voit à la fois les dossiers partagés et les dossiers locaux, qui peuvent simplement être ouverts dans son navigateur, mais lors de la compilation, il placera l'exécutable dans le dossier source.

C'est là que se situe le problème des versions terminales. Il est préférable de configurer l'emplacement cible comme il convient.

Ou (je le ferais) au moment de la compilation, ajouter un suffixe au nom du fichier avec la version du compilateur. Comme MACross.b509.ex4 Oui, le nom est allongé, mais il est informatif et résout très universellement les problèmes de versions de terminaux.

 

artmedia70:

...alors ne soyez pas une brute. D'accord ?

Tu l'as. :)
 
MetaDriver:

C'est juste le problème avec les versions des terminaux peut être. Il est préférable de définir l'emplacement cible en fonction des circonstances.

Ou (je le ferais) au moment de la compilation, ajouter le suffixe de la version du compilateur au nom du fichier. Comme MACross.b509.ex4 Oui, le nom est allongé, mais il est informatif et résout très universellement les problèmes de versions de terminaux.

Il est déjà assez problématique de conserver plusieurs versions du terminal - elles se mettent toutes à jour après la mise à jour de l'une d'entre elles.

Je ne pense pas que nous devrions compter sur ça.

Mais un dossier commun pour les sources serait utile, surtout en tenant compte des #ifdef et de la possibilité d'écrire des bibliothèques universelles (4-5).

 
MetaDriver:
Marché conclu. :)

Marché conclu ;)
 

Maintenant, le compilateur, s'il y a des fonctions inutilisées, ne donne pas un avertissement qu'il y en a et qu'elles seront exclues de l'exécutable. Est-ce que ça va rester comme ça ?

Maintenant il y a des avertissements sur les variables inutilisées (très pratique d'ailleurs, merci).

 
artmedia70:

Maintenant, le compilateur, s'il y a des fonctions inutilisées, ne donne pas un avertissement qu'il y en a et qu'elles seront exclues de l'exécutable. Est-ce que ça va rester comme ça ?

Oui, il le fera.

Compte tenu de l'utilisation active des bibliothèques, vous ne pouvez plus émettre de tels messages. Tant de fonctions peuvent être inutilisées. Bien entendu, toutes les fonctions inutilisées sont supprimées.

 
komposter:

Il est déjà assez problématique de conserver plusieurs versions du terminal - elles se mettent toutes à jour après la mise à jour de l'une d'entre elles.

Je ne pense pas que nous devrions compter sur ça.

Je n'ai pas pensé à le mettre en gage. Les cas sont différents. Par exemple, les tests bêta... :)


Mais un dossier partagé pour les sources serait utile, surtout si l'on considère #ifdef et la possibilité d'écrire des bibliothèques universelles (4-5).

Eh bien, oui. Une suite très logique du développement de la fonctionnalité.
 

Cependant, il n'est plus possible de modifier les valeurs des variables externes qui leur ont été initialement attribuées pendant l'exécution du programme, n'est-ce pas ?

Ce n'est pas très pratique. Je vais devoir en créer un autre...