Nuances entre VB5 et VB sous Win98 et Win XP

nicrolfi Messages postés 138 Date d'inscription samedi 10 mars 2007 Statut Membre Dernière intervention 16 avril 2013 - 30 mai 2007 à 16:59
nicrolfi Messages postés 138 Date d'inscription samedi 10 mars 2007 Statut Membre Dernière intervention 16 avril 2013 - 5 juin 2007 à 18:09
Bonjour,

J'ai chargé un programme en VB sur ce site (programme de pilotage de moteurs pas à pas par le port //).

Je n'arrive pas à faire tourner ce programme et, c'est également l'avis de l'auteur de la source, je rencontre des difficultés peut-être dues aux différences de version.

Voici donc les questions que je me pose et des réponses pourraient beaucoup m'aider:

- sous Win XP, il semble nécessaire d'utiliser une dll d'entrée sortie par le port // (inpout.dll par exemple)
- le programme est fait dans VB6 et je n'ai que VB5. Dans VB6, le programme fonctionne (chez l'auteur) en déclarant inpout.dll en sortie comme SUB et en entrée comme Function. Ces déclarations sont écrites dans le code de la feuille VB. Dans VB5, cela ne marche pas. Ne faut il pas déclarer les SUB et Function (externes) dans un module plutôt que dans la feuille? Si oui, est-ce la même syntaxe?
- dans VB6, il ne semble plus nécessaire de déclarer des SUB et Function internes (le code de la sub ou de la function est écrit dans la feuille). Faut-il les déclarer sous VB5? Si oui, où?

Mille merci d'avance pour l'aide....car je suis bloqué...

A bientôt

66 réponses

nicrolfi Messages postés 138 Date d'inscription samedi 10 mars 2007 Statut Membre Dernière intervention 16 avril 2013
5 juin 2007 à 10:35
Bonjour,

L'essai avec Win Xp sur PC sans droits d'administrateur ne fonctionne pas.Arrivé à l'instruction out, le programme s'éjecte de VB et retour à l'écran Windows. Pas de message.

J'essaie avec le PC raccordé au cartes de contrôle.

Après, je change de dll....Je ne vois pas d'autres solution.

J'irais vers io.dll . Qu'en pensez-vous?

Merci et à +

Roland
0
nicrolfi Messages postés 138 Date d'inscription samedi 10 mars 2007 Statut Membre Dernière intervention 16 avril 2013
5 juin 2007 à 16:06
Chers vous tous en particulier Casy qui m'aide depuis plusieurs jours...
Vous voyez au ton que les nouvelles sont bonnes...

Un moteur a tourné (comme désiré) sur le port //, dans VB5, sous win XP, avec la dll io.dll

Ce que j'ai fait :

J'ai démarré le PC en mode administrateur (ainsi j'ai tous les droits).
J'ai placé io.dll dans c:\windows\system32\
Quand on veut l'enregistrer sur regsvr32, cela ne va pas (Message: pas trouvé le point d'entrée)

Dans le programme j'ai déclaré très simplement:

Private Declare Sub PortOut Lib "c:\windows\system32\io.dll" (ByVal Port as Integer, Byval Data as Byte)
Je n'avais pas besoin de PortIn pour mon essai.

Attention la majuscule de Out dans PortOut est nécessaire!!!!!

L'instruction est

PortOut &H378, &H (valeur)  avec valeur en hexadécimal

C'est tout. Avec inpout .dll ça ne marche pas (mais sans doute que je fais quelque chose de pas OK)

Je ne pense pas que tout ce que j'ai fait soit nécessaire
- passage en mode administrateur
- essai d'enregistrement de la dll: pas necessaire
- écrire tout le chemin d'accès de la dll dans la déclaration: pas nécessaire si placée dans system32

Je suis heu-reux!! Merci à tous et à ceux qui organisent ce site dans lequel il y a une ambiance chaleureuse et une grande disponibilité à aider. C'est magique. Je reviendrai...

Je ne sais pas quelle réponse il faut "accepter", elles m'ont toutes aidé à avancer à (petits) pas

A+

Roland
0
VBGenesis Messages postés 292 Date d'inscription samedi 25 février 2006 Statut Membre Dernière intervention 22 février 2009
5 juin 2007 à 17:50
Salut!

J'avais justement trouvé une question sur un autre forum confirmant ce que inpout32 ne marche pas sous XP et qu'il faut prendre io.dll (ce que ton post confirme), mais je n'était pas chez moi, donc impossible de modifier le prog. Je m'y colle tout de suite!
(Par contre comment ai-je pu la faire marcher chez moi??????? 8| )

Je vais donc mettre à jour suivant tes recommandations. Merci!

A+

VBGenesis
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
5 juin 2007 à 17:54
Chez moi tout les prog que j'ai fait avec la dernière version d'inpout32.dll fonctionnent correctement.

Avec une version précédente il ya avait effectivement des problèmes avec le SP2 d'XP, mais cette version est censée avoir corriger tout ça.

Mais bon puisqu'il existe une autre solution ......

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
VBGenesis Messages postés 292 Date d'inscription samedi 25 février 2006 Statut Membre Dernière intervention 22 février 2009
5 juin 2007 à 18:01
Merci casy!
Je n'ai peut-etre pas mis la meme version dans le zip, je ne sais pas...
En tout cas j'avais oublié de mettre l'adresse du forum dont j'ai parlé, si ca interresse quelqu'un:
http://www.developpez.net/forums/showthread.php?t=347305

On en vois enfin le bout!

VBGenesis
0
nicrolfi Messages postés 138 Date d'inscription samedi 10 mars 2007 Statut Membre Dernière intervention 16 avril 2013
5 juin 2007 à 18:09
Bonjour,

Est-ce que VBGenensis est bien en Win XP?? Quelle version??

C'est peut-être la Version de Win Xp qui est en cause???

Si cela marche chez VBGenesis, tu ne dois pas nécessairement changer...

A+

Roland
0
Rejoignez-nous