Voila ,je vais essayer d'être clair et vous exposer mon soucis ! j'ai un programme + des dlls qui pilote une machine via le port parallele.Pour se faire j'utilise " SmallPort "
mon programme principal s'occupe de la gestion globale du projet et les dlls , elles executes des ordres via le port // pour piloter ma machine.
Au debut avant que je ne doive utiliser des dlls , j'initialisai mon port // sous Xp au lancement de mon application . et tout ce passer bien !!
Quand je suis passer par les dll , la seule solution que j'ai trouver et de compiler mes DLL avec l'unité SmallPort et de declarer un objet Tsmallport dans chacune d'elles afin que çà fonctionne.Ce qui revient a dire que chaque dll possede son propre handle du port ( je pense )
Donc a ce jour a chaque appel a une fonction de la dll ,
- j'initialise le port declarer dans la dll,
- execute ma fonction via le port ,
- et referme le port declarer dans le dll ( afin que je puisse le reouvrir avec un appel d'une autre dll)
et ainsi de suite chaque fois que je fais appel a une dll.
donc voila mon soucis les ordres que j'execute doivent etre rapide , et il s'avere que le temps d'initialisation de mon port // (environ 6ms) est superieur au temps des ordres que je peux envoyer sur le port , ce qui ralenti conciderablement le process .
Donc je voudrais savoir si il est possible de declarer un objet , un handle, une variable .. dans mon programme principal qui pourrais etre lu par les dll ,
En fait trouver un moyen de declarer l'objet Smallport de telle sorte que je l'initialise au depard de mon appli , et ceci de maniere a ce que mes dll sache l'uitiliser sans avoir besoin de le reinitialer a chaque fois que je rentre dans une dll.
j'espere avoir etait assez clair , et si quelqu'un peu me tuyauter merci d'avance , et d'ailleur merci aussi a tous ce qui mon deja aidé !
Partager