Bonjour a tous ..
voila mon programme utilisait jusqu'a present un drivers qui s'apelle ' smallport ' pour piloter le port // , mais qui a configuration equivalente ne fonctionne pas sur tout les PC . J'ai donc decidé de changer de drivers et suite au conversation lu sur le forun j'ai pris ZlportIO.qui semble bien fonctionner a quelque detail pres , mais surement de ma part !
je suis sous delphi 7 et Xp pro .
j'utilise ' zliosetiopm= true' pour travailler directement avec les ports.
je passe l'etat de la variable ZLiostarted dans un 'showmessage' juste pour pour voir l'etat du port .
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 procedure initParallele(port:integer); begin Zliostop; // etat_port est l'image de ZLiostarted showmessage(etat_port) Zliostart; showmessage(etat_port) Zliosetiopm(true); if port=1 then adr_Add:=$378; if port=2 then adr_Add:=$37C; adr_control:=adr_Add + 02 ; adr_reg_etat:=adr_Add + 01 ; // positionne le port en EPP+ECP portwriteb($77,$80) end;
mais je recontre deux problemes .
1er) Quand je lance mon application (programme principal)parfois 'ZLiostarted' reste a false et donc le port est pas initialiser et ceci aleatoirement et parfois il est a true meme avant l'initialisation !!
quelqu'un a t il deja vu ce probleme ?
2eme ) j'ai un certain nombre de dll qui utilise le port //
donc j'initialise le port // une fois dans mon programme principal et ensuite une autre fois dans l'initialisation de mes dlls ( la methode est elle correcte je fesais comme çà avant aussi ) ..et mes showmessage me dise que mon port est pas ouvert quand je veux l'utiliser dans une de mes dll. pourtant j'utilise la meme procedure d'initialisation .
si quelqu'un a une idée ?
merci d'avance
Partager