Bonsoir,
je suis en train de créer un programme en basic, et j'ai besoin qu'il sache son nom quand il est exécuté, même si on le renomme.
Donc il ne faut pas que son nom soit sauvegardé dans le programme, mais je dois trouver une instruction qui permet de le trouver.
Il me paraît impossible de faire ça en basic, alors je cherche quelqu'un qui serait assez sympa pour me montrer le code asm, ou, encore mieux, la chaîne exec convertie (je n'ai aucune connaissance en asm).
Cette instruction sera exécutée au tout début du programme, et il faudrait que j'obtienne une chaîne nommée "n", qui serait du type "dossiernom_du_programme".
Je suis totalement incapable de le faire moi-même. Si vous voulez faire une bonne action, c'est le moment !
Merci d'avance.
aze Le 23/03/2002 à 15:04 j'avais dja posté un topic de ce genre ds la rubrique basic, mais g po eu de solutions...
aze Le 23/03/2002 à 15:11 oué jpensais aller voir dans une pile...
ou alors ya pas moyen de trouver a quel prog est rattaché un rep local (genre '0001')
il suffirait de prendre celui qui a le n° le plus elevé et de trouver le prog qui lui est rattaché...
J'avais vu le topic Basic, mais pas de solutions...
Je pensais qu'il était possible de retrouver le nom du programme dans la pile assez facilement, étant donné que c'était la première instruction du programme.
J'ai une méthode, mais elle est très très très bourrin : essayer d'archiver et de désarchiver chaque variable de la ti (liste facile à avoir avec flib). Normalement ça devrait planter avec le programme en exécution. Une boucle Try et c'est fait, mais y en a pour 10 secondes au minimum.
Si vraiment ça vous paraît impossible à faire en asm, je ferai ça. Mais si vous voyez d'autres fonctions qu'on ne peut pas appeler sur un prgm en éxecution, faites-moi signe !
aze Le 23/03/2002 à 18:39 ca va vite user l'archive si tu utilise souvent ce prog...
et puis si ton prog est appellé par un autre prog basic, il se peut que ce soit celui la qui soit detecté par ta methode !
(t'as qu'a regarde les flags du handle associé a ta var, il me semble qu'il y en a un qu s'appelle 'in use', c deja plus propre comme methode)
aze Le 23/03/2002 à 19:09 mais meme avec cette methode (ou plutot celle de verifier le IN_USE flag, tu ne peux pas savoir quel est le prog qui a ete executé en dernier si tu a des appels depuis un autre prog
PpHd Le 25/03/2002 à 09:16 Peut etre une recherche des programmes in-use ?
PpHd Le 26/03/2002 à 10:10 Une recherche des fichiers synonimes pourrait etre interressantes.
paxal Le 26/03/2002 à 18:42 Thibault: heu non, je cale, mais je peux faire des recherches
paxal Le 26/03/2002 à 18:58 Il semblerait que l'avant dernier handle + 5 contienne le nom du premier prog lancé.
mmm, je pense que l'AMS bouche les trous de la table des handles, donc on ne peut pas connaître le dernier handle créé (il n'est pas mis au bout de la table).
Merci beaucoup pour toutes vos réponses.
ExtendeD, je viens de tester ton programme, j'ai changé le nom de la variable retournée, et ça marche nickel. C'est parfait.
Encore merci !