IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

[VBA] Désactiver la roulette de la souris sans DLL


Sujet :

Access

  1. #1
    Membre du Club
    Inscrit en
    Avril 2006
    Messages
    177
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 177
    Points : 55
    Points
    55
    Par défaut [VBA] Désactiver la roulette de la souris sans DLL
    Je voudrait désactiver la molette sur un formulaire, j'ai bien vu le sujet de la faq à ce sujet mais y aurait-il un autre moyen qu'ajouter cette reférence car mon outil sera multi postes et je me vois mal installer sur chaque poste la ddl ?
    Exixte t-il une autre solution ?
    Merci d'avance

  2. #2
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Non. Il y a aussi le tutoriel de arkkam http://access.developpez.com

    Mais dans tous les cas y a une dll... et dans tout les cas, il faudra bien que tu installes ton appli sur tout les postes, alors autant inclure la dll dans le package non ?

  3. #3
    Membre du Club
    Inscrit en
    Avril 2006
    Messages
    177
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 177
    Points : 55
    Points
    55
    Par défaut
    Non l'appli sera sur le réseau, je ne l'installerais pas sur tout les postes. si j'ai éssayé de mettre la ddl dur le reseau mais ca marche pas...

  4. #4
    Rédacteur/Modérateur
    Avatar de argyronet
    Homme Profil pro
    Panseur de bobos en solutions ETL
    Inscrit en
    Mai 2004
    Messages
    5 123
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Panseur de bobos en solutions ETL
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 5 123
    Points : 12 169
    Points
    12 169
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    Citation Envoyé par mat75019
    Non l'appli sera sur le réseau, je ne l'installerais pas sur tout les postes. si j'ai éssayé de mettre la ddl dur le reseau mais ca marche pas...
    Humm...
    On ne met pas l'application sur un serveur mais la base de données ne contenant que les tables et une application frontale sur chaque poste, sous forme de MDE... qui ne contient que les forms, les requêtes, les états...

    Tu n'as pas le choix...
    Tu es obligé d'intaller l'application afin que le SETUP enregistre et installe correctement toutes les références et les composants nécessaires au bon fonctionnmenet de ton appli.

    Argy
    Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment.

    Ils comptent sur vous...
    Web Site@Mail
    Tutoriels : Déployez vos applications Access 2010 à 2019 */* Réalisez un Assistant de présaisie...
    MDB Viewer : Visionneuse Access v4.0
    *** Je recherche des profils (2 ans min.) Java EE, Fullstack, Front, .Net, Mobile... pour CDI ***

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 13
    Points : 10
    Points
    10
    Par défaut
    je vais rajouter encore un pb cette question:

    j'ai mis en place le source dispo sur la FAQ, j'ai suivi toute la procédure d'installation de la dll, et voici le prob lors de l'ouverture du formulaire dans lequel je veux desactiver la molette :

    Erreur 429 : un composant activeX ne peut pas creer d'objet

    le debogueur m'indique cette ligne :
    Set clMouseWHeel = New MouseWheelDVP.cMouseWheel

    pour info, j'utilises access2000

    pouvez vous m'aider SVP ?

  6. #6
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 524
    Points
    14 524
    Par défaut
    Citation Envoyé par GoldHofer
    je vais rajouter encore un pb cette question:

    j'ai mis en place le source dispo sur la FAQ, j'ai suivi toute la procédure d'installation de la dll, et voici le prob lors de l'ouverture du formulaire dans lequel je veux desactiver la molette :

    Erreur 429 : un composant activeX ne peut pas creer d'objet

    le debogueur m'indique cette ligne :
    Set clMouseWHeel = New MouseWheelDVP.cMouseWheel

    pour info, j'utilises access2000

    pouvez vous m'aider SVP ?
    Peut-être un message séparé serait préférable, les réponses aux questions vont se croiser sinon...

    Généralement quand il y a cette erreur la librairie n'est pas enregistrée correctement.

    Essaye de l'enregistrer à la main en lancant la commande :
    regsvr32.exe C:\....\MouseWheel.dll
    dans Démarrer->Exécuter

    Parfois en faisant comme ça on voit un message d'erreur qu'on ne voit pas en référençant dans Access.

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 13
    Points : 10
    Points
    10
    Par défaut
    Merci pour ta rep.

    Voici l'erreur que cela me produit lorsque je fais l'install en manu :
    (j'ai fait ce test avec deux types de DLL differentes notamment celle que tu as mis sur la FAQ (MouseWhellDVP.dll))

    DllRegisterServer in c:\monchemin\MouseWhellDVP.dll failed
    Return code was 0x80004005

    Cela vous parle ??????

  8. #8
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 524
    Points
    14 524
    Par défaut
    Citation Envoyé par GoldHofer
    Merci pour ta rep.

    Voici l'erreur que cela me produit lorsque je fais l'install en manu :
    (j'ai fait ce test avec deux types de DLL differentes notamment celle que tu as mis sur la FAQ (MouseWhellDVP.dll))

    DllRegisterServer in c:\monchemin\MouseWhellDVP.dll failed
    Return code was 0x80004005

    Cela vous parle ??????
    Peut-être une piste, pour enregistrer un dll créée avec VB6 il faut le fichier
    MSVBVM60.DLL. Sur certaine versions de windows (genre win98) il n'est pas là à l'installation, mais il doit être dans le runtime VB.


  9. #9
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 13
    Points : 10
    Points
    10
    Par défaut
    J'ai installé le runtime VB6 mais malheureusement RAS !

    Cette DLL que tu viens de m'indiquer dois je l'installer en manu ou c'est deja fais via RT VB6 ???

    Complément d'info : ma bécanne tourne sous Win2000Pro

  10. #10
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 524
    Points
    14 524
    Par défaut
    Citation Envoyé par GoldHofer
    J'ai installé le runtime VB6 mais malheureusement RAS !

    Cette DLL que tu viens de m'indiquer dois je l'installer en manu ou c'est deja fais via RT VB6 ???

    Complément d'info : ma bécanne tourne sous Win2000Pro
    là je suis à court d'idée, à part tester sur un autre pc...

  11. #11
    Membre à l'essai
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 13
    Points : 10
    Points
    10
    Par défaut
    C 'est ce que je me disais, vu que la je suis dans ma boite, à mon avis l'adminatrateur du parc à peut verrouillé certaines choses.

    Je vais emporter ca pour essayer mon pc à la maison !

    En tout cas merci beaucoup Arkham c'est trés sympa ! je tiens au courant des évolutions de la chose

  12. #12
    Rédacteur/Modérateur
    Avatar de argyronet
    Homme Profil pro
    Panseur de bobos en solutions ETL
    Inscrit en
    Mai 2004
    Messages
    5 123
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Panseur de bobos en solutions ETL
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 5 123
    Points : 12 169
    Points
    12 169
    Billets dans le blog
    5
    Par défaut
    Cette DLL (MouseWheel.dll) doit être placée physiquement dans les dossier %WinSys32%.
    Ensuite dans Outils/Références, sélectionner cette dernière depuis le bouton Parcourir...
    Une fois cela fait, fait appel à la classe comme suit dans le Form_Load:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private WithEvents clsMouseWheel As MouseWheel.CMouseWheel
    Private Sub Form_Load()
      Set clsMouseWheel = New MouseWheel.CMouseWheel
      Set clsMouseWheel.Form = Me
      clsMouseWheel.SubClassHookForm
    End Sub
    Puis dans le Form_Close:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub Form_Close()
        clsMouseWheel.SubClassUnHookForm
        Set clsMouseWheel.Form = Nothing
        Set clsMouseWheel = Nothing
    End Sub
    Et enfin sur l'événement MouseWheel...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub clsMouseWheel_MouseWheel(Cancel As Integer)
        Cancel = True
    End Sub
    C'est tout et ce pour chaque form concerné...

    Pour l'enregistrer, il suffit de cliquer 2x dessus et de sélectionner REGSRV32.EXE comme programme pour l'ouvrir...

    Argy
    Ce qui donne son sens à la communication, c´est la réponse que l´on obtient. Si vous n´obtenez pas la réponse voulue, communiquez différemment.

    Ils comptent sur vous...
    Web Site@Mail
    Tutoriels : Déployez vos applications Access 2010 à 2019 */* Réalisez un Assistant de présaisie...
    MDB Viewer : Visionneuse Access v4.0
    *** Je recherche des profils (2 ans min.) Java EE, Fullstack, Front, .Net, Mobile... pour CDI ***

Discussions similaires

  1. [AC-2003] Désactivation de la roulette de la souris en vba
    Par olivier777 dans le forum VBA Access
    Réponses: 1
    Dernier message: 29/10/2009, 11h19
  2. Probleme avec la roulette de la souris dans VBE
    Par GESCOM2000 dans le forum Access
    Réponses: 3
    Dernier message: 04/02/2006, 16h53
  3. Utiliser la roulette de la souris dans un DBLookupComboBox
    Par lagunss dans le forum Composants VCL
    Réponses: 1
    Dernier message: 14/10/2005, 22h35
  4. Roulette de la souris
    Par mpat dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 08/01/2005, 22h39
  5. Réponses: 5
    Dernier message: 25/06/2004, 15h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo