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

VB 6 et antérieur Discussion :

Problème d'instanciation d'une structure défini dans un OCX


Sujet :

VB 6 et antérieur

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2009
    Messages : 2
    Points : 2
    Points
    2
    Par défaut Problème d'instanciation d'une structure défini dans un OCX
    Bonjour,

    J'en appelle à votre expertise car je suis dans un cas plus que bizarre.

    Je suis chargé de maintenir un vieux programme mais je suis bloqué car j'ai un problème mais aucune explication logique et donc aucune solution.

    Le programme principal est constitué de plusieurs DLLs ActiveX.
    L'une de ces DLL utilise un OCX fourni par une société tierce. Le composant est donc référencé (par les components) dans le projet.

    Dans le code, on fait plusieurs appels aux fonctionnalités et on utilise les composants graphiques de cet OCX. Tout fonctionne parfaitement. Sauf qu'à un moment nous souhaitons déclarer une variable dont le type est une structure définie et exportée par l'OCX. A la compilation il n'y aucun souci mais à l'exécution on obtient une erreur "Run-time error '32797' : Application-defined or object-defined error". Après de longue recherche pour trouver la cause, j'ai trouvé que c'était la déclaration suivante qui provoquait l'erreur.

    Dim myVariable As MyOCXLib.MASTRUCTURE_A_UTILISER

    Je ne pense pas que le problème viennent de l'OCX (je l'ai enregistré, désenregistrer, vérifié à l'aide de OLE Viewer que la TypeLib était correct, vérifié que le registre contenait les bonnes information mais tout est normal). De plus un programme d'exemple fourni avec l'OCX et qui utilise la même déclaration fonctionne correctement lui...

    J'en viens donc à suspecter un problème sur mon projet mais je ne vois pas quoi...

    Pour information, j'ai enlevé la référence sur l'OCX du projet pour la recréer ensuite mais cela n'a absolument rien changé...

    Il y a une autre structure exportée par l'OCX que j'ai essayé mais j'ai la même erreur...


    Voila, je ne sais plus quoi tenter et je n'ai aucune explication c'est pourquoi je me tourne vers vous.

    Merci d'avance pour votre aide.

    Cordialement

  2. #2
    Candidat au Club
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2009
    Messages : 2
    Points : 2
    Points
    2
    Par défaut
    Bonjour,

    J'ai trouvé la solution mais je ne connais pas la raison exacte. En fait, il était nécessaire de compiler le projet sur un windows XP SP1 et non un XP avec sp2. Je ne sais pas ce qui a changé et quels sont les impacts sur VB entre les deux service packs mais en tout cas cela fonctionne maintenant...

    Merci à vous pour au moins avoir regardé mon post

    a bientôt

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 16/04/2010, 08h29
  2. Réponses: 17
    Dernier message: 09/03/2007, 18h13
  3. [Linux]problème d'affectation d'une structure
    Par cimcim dans le forum Linux
    Réponses: 5
    Dernier message: 11/12/2006, 17h13
  4. [XSLT] Réutiliser une variable définie dans une boucle
    Par DelphLaga dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 12/10/2006, 16h49
  5. Transformation d'une structure(définie en xml) en formulaire
    Par boniface dans le forum XML/XSL et SOAP
    Réponses: 1
    Dernier message: 06/07/2005, 07h39

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