Je fais un programme en visual basic, qui doit ecrire sur le port parallele.
Je suis sous windows 2000, ca plante quand j'essai d'écrire sur le port,
alors que ca passe sous 98.
Y'a t'il une modif à faire, faut-il ajouter une DLL ?
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jean-Claude BELLAMY
Christophe s'est ainsi exprimé:
Je fais un programme en visual basic, qui doit ecrire sur le port parallele. Je suis sous windows 2000, ca plante quand j'essai d'écrire sur le port, NORMAL !
Cela est strictement interdit sous NT ! Tout accès au matériel DOIT passer par le système. JAMAIS d'accès direct (in, out, int13h, .. interdits!)
alors que ca passe sous 98. Y'a t'il une modif à faire, faut-il ajouter une DLL ?
Tu peux passer par la fonction "CreateFile" (de kernel32.dll), qui permet d'ouvrir à peu près n'importe quoi (fichiers, répertoires, ports COM et LPT,..) Syntaxe C : HANDLE CreateFile( LPCTSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile );
On doit avoir, dans le cas d'un port, : dwShareMode = 0 (accès exclusif) dwCreationDisposition = OPEN_EXISTING hTemplateFile = NULL
On peut aussi s'en tirer à l'aide d'une interface nommée "NTPort", qui fonctionne très bien (sous Win9X/ME/NT3.5x/NT4/W2K/XP/W2K3) , et est utilisable dans toute appli C,/C++, VB, Delphi, VN.NET, C#, ...(tout est fourni : les *.h, *.cpp, *.dsw, ..*.dfm, *.dpr, *.pas, ...*.frm..) Son usage est plus simple que celui de Createfile (et tout est prévu pour l'utiliser directement en VB)
Ce n'est pas gratuit, mais le prix est raisonnable (30 $) http://zealsoftstudio.com/ntport/
Il existe chez cet éditeur la même chose pour des accès MEMOIRE directs http://www.zealsoft.com/memaccess/index.html
-- May the Force be with You! La Connaissance s'accroît quand on la partage ---------------------------------------------------------- Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org *
Christophe <cristophe@libertysurf.fr> s'est ainsi exprimé:
Je fais un programme en visual basic, qui doit ecrire sur le port
parallele. Je suis sous windows 2000, ca plante quand j'essai
d'écrire sur le port,
NORMAL !
Cela est strictement interdit sous NT !
Tout accès au matériel DOIT passer par le système.
JAMAIS d'accès direct (in, out, int13h, .. interdits!)
alors que ca passe sous 98.
Y'a t'il une modif à faire, faut-il ajouter une DLL ?
Tu peux passer par la fonction "CreateFile" (de kernel32.dll), qui permet
d'ouvrir à peu près n'importe quoi (fichiers, répertoires, ports COM et
LPT,..)
Syntaxe C :
HANDLE CreateFile(
LPCTSTR lpFileName,
DWORD dwDesiredAccess,
DWORD dwShareMode,
LPSECURITY_ATTRIBUTES lpSecurityAttributes,
DWORD dwCreationDisposition,
DWORD dwFlagsAndAttributes,
HANDLE hTemplateFile
);
On doit avoir, dans le cas d'un port, :
dwShareMode = 0 (accès exclusif)
dwCreationDisposition = OPEN_EXISTING
hTemplateFile = NULL
On peut aussi s'en tirer à l'aide d'une interface nommée "NTPort", qui
fonctionne très bien (sous Win9X/ME/NT3.5x/NT4/W2K/XP/W2K3) , et est
utilisable dans toute appli C,/C++, VB, Delphi, VN.NET, C#, ...(tout est
fourni : les *.h, *.cpp, *.dsw, ..*.dfm, *.dpr, *.pas, ...*.frm..)
Son usage est plus simple que celui de Createfile (et tout est prévu pour
l'utiliser directement en VB)
Ce n'est pas gratuit, mais le prix est raisonnable (30 $)
http://zealsoftstudio.com/ntport/
Il existe chez cet éditeur la même chose pour des accès MEMOIRE directs
http://www.zealsoft.com/memaccess/index.html
--
May the Force be with You!
La Connaissance s'accroît quand on la partage
----------------------------------------------------------
Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org
Jean-Claude.Bellamy@wanadoo.fr * JC.Bellamy@free.fr
Je fais un programme en visual basic, qui doit ecrire sur le port parallele. Je suis sous windows 2000, ca plante quand j'essai d'écrire sur le port, NORMAL !
Cela est strictement interdit sous NT ! Tout accès au matériel DOIT passer par le système. JAMAIS d'accès direct (in, out, int13h, .. interdits!)
alors que ca passe sous 98. Y'a t'il une modif à faire, faut-il ajouter une DLL ?
Tu peux passer par la fonction "CreateFile" (de kernel32.dll), qui permet d'ouvrir à peu près n'importe quoi (fichiers, répertoires, ports COM et LPT,..) Syntaxe C : HANDLE CreateFile( LPCTSTR lpFileName, DWORD dwDesiredAccess, DWORD dwShareMode, LPSECURITY_ATTRIBUTES lpSecurityAttributes, DWORD dwCreationDisposition, DWORD dwFlagsAndAttributes, HANDLE hTemplateFile );
On doit avoir, dans le cas d'un port, : dwShareMode = 0 (accès exclusif) dwCreationDisposition = OPEN_EXISTING hTemplateFile = NULL
On peut aussi s'en tirer à l'aide d'une interface nommée "NTPort", qui fonctionne très bien (sous Win9X/ME/NT3.5x/NT4/W2K/XP/W2K3) , et est utilisable dans toute appli C,/C++, VB, Delphi, VN.NET, C#, ...(tout est fourni : les *.h, *.cpp, *.dsw, ..*.dfm, *.dpr, *.pas, ...*.frm..) Son usage est plus simple que celui de Createfile (et tout est prévu pour l'utiliser directement en VB)
Ce n'est pas gratuit, mais le prix est raisonnable (30 $) http://zealsoftstudio.com/ntport/
Il existe chez cet éditeur la même chose pour des accès MEMOIRE directs http://www.zealsoft.com/memaccess/index.html
-- May the Force be with You! La Connaissance s'accroît quand on la partage ---------------------------------------------------------- Jean-Claude BELLAMY [MVP] - http://www.bellamyjc.org *
Pascal SIMON
Il faut que tu déconnectes toute eventuelle imprimante connectée au port LPT sur lequel tu veux écrire (si elle était en LPT1, tu la passes en LPT2 ou LPT3. Evidemment, tu ne pourras pas imprimer tant que tu n'aura pas fait la manip inverse). Win2k supporte mal que plusieurs personne gère en même temps un même port LPT.
"Christophe" wrote in message news:bknl68$skf$
Je fais un programme en visual basic, qui doit ecrire sur le port parallele.
Je suis sous windows 2000, ca plante quand j'essai d'écrire sur le port, alors que ca passe sous 98. Y'a t'il une modif à faire, faut-il ajouter une DLL ?
Merci d'avance
Il faut que tu déconnectes toute eventuelle imprimante connectée au port LPT
sur lequel tu veux écrire (si elle était en LPT1, tu la passes en LPT2 ou
LPT3. Evidemment, tu ne pourras pas imprimer tant que tu n'aura pas fait la
manip inverse). Win2k supporte mal que plusieurs personne gère en même temps
un même port LPT.
"Christophe" <cristophe@libertysurf.fr> wrote in message
news:bknl68$skf$1@news.tiscali.fr...
Je fais un programme en visual basic, qui doit ecrire sur le port
parallele.
Je suis sous windows 2000, ca plante quand j'essai d'écrire sur le port,
alors que ca passe sous 98.
Y'a t'il une modif à faire, faut-il ajouter une DLL ?
Il faut que tu déconnectes toute eventuelle imprimante connectée au port LPT sur lequel tu veux écrire (si elle était en LPT1, tu la passes en LPT2 ou LPT3. Evidemment, tu ne pourras pas imprimer tant que tu n'aura pas fait la manip inverse). Win2k supporte mal que plusieurs personne gère en même temps un même port LPT.
"Christophe" wrote in message news:bknl68$skf$
Je fais un programme en visual basic, qui doit ecrire sur le port parallele.
Je suis sous windows 2000, ca plante quand j'essai d'écrire sur le port, alors que ca passe sous 98. Y'a t'il une modif à faire, faut-il ajouter une DLL ?