DLL OLEAUT32 comment ça marche? [Résolu]

julienbad 7 Messages postés jeudi 2 juin 2005Date d'inscription 5 juillet 2005 Dernière intervention - 16 juin 2005 à 14:47 - Dernière réponse : julienbad 7 Messages postés jeudi 2 juin 2005Date d'inscription 5 juillet 2005 Dernière intervention
- 16 juin 2005 à 18:00
Bonjour à tous!

Voila j'ai un problème avec l'utilisation d'un Variant .
En fait je doit utiliser une dll activeX écrite en VB avec un programme écrit sous visual C++
Pour importer la dll pas de pb! j'ai les deux headers
Mon problème survient quand je veux utiliser une fonction prenant en parametre 2 BSTR* et 2 Variant*
Fonction(BSTR* w, VARIANT* x,VARIANT* y,BSTR* z)

en fait je pense que mon erreur viens du parametre x prenant un type VARIANT*.
Je doit déclarer à ce moment un chemin d'accés sous forme de Char* et le convertir en VARIANT*

char* path2 = "c:\\fichier.cfg";
VARIANT* varDataBase = new VARIANT;
varDataBase.vt = VT_I1|VT_BYREF;
varDataBase.pcVal = path2;

mais une fois que j'utilise varDataBase une erreur de pointeur se produit :
0x77a30f68 referenced at 0x31414450
et en debeug je vois que le programme coince lors de l'utilisation de la dll OLEAUT32

Est ce que qq un sait à quoi sert cette dll

bonne journée!
julien
Afficher la suite 

Votre réponse

2 réponses

Meilleure réponse
BruNews 21054 Messages postés jeudi 23 janvier 2003Date d'inscription 7 novembre 2014 Dernière intervention - 16 juin 2005 à 16:15
3
Merci
VARIANT vrt;
VariantInit(&vrt);

ciao...
BruNews, MVP VC++

Merci BruNews 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 70 internautes ce mois-ci

Commenter la réponse de BruNews
Meilleure réponse
julienbad 7 Messages postés jeudi 2 juin 2005Date d'inscription 5 juillet 2005 Dernière intervention - 16 juin 2005 à 18:00
3
Merci
ça c mieux!!

_variant_t varDataBase = new _variant_t;
varDataBase.vt = VT_BSTR;
varDataBase.bstrVal = pathBstr;

ciao too
julien

Merci julienbad 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 70 internautes ce mois-ci

Commenter la réponse de julienbad

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.