Utilisation DLL .NET en C++

thmatew Messages postés 68 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 19 janvier 2010 - 19 févr. 2007 à 10:10
ShareVB Messages postés 2676 Date d'inscription vendredi 28 juin 2002 Statut Membre Dernière intervention 13 janvier 2016 - 1 mars 2007 à 16:40
Bonjour amis programmeurs,

J'ai un petit souci : comme le dit l'objet, je dois utiliser une dll .NET en C++, j'arrive à intégrer la dll à mon projet, j'arrive à initialiser les variable qu'il faut et tt, mais je n'arrive pas à utiliser plusieurs fonctions pour la bonne et simple raison qu'il faut utiliser des Variant et je ne sais pas du tt comment m'en servir.

Mes questions sont donc les suivantes :   -Que sont les Variants?
                                                              -Comment les utilise-t-on?
                                                              -A quoi servent-ils exactement?

Merci pour vos réponses et l'interêt que vous porterez à cette question.

PS: j'utilise Borland Developer Studio 2006.

1 réponse

ShareVB Messages postés 2676 Date d'inscription vendredi 28 juin 2002 Statut Membre Dernière intervention 13 janvier 2016 26
1 mars 2007 à 16:40
salut,

VARIANT est un type COM permettant de contenir divers types de données (un nombre, une chaine, une interface...) mais un seul à la fois. La structure VARIANT contient un champs indiquant le type de données contenu dans le second champs...si la donnée tient sur 8 octets alors elle est stockée directement dans le VARIANT, sinon dans une zone pointée par le second membre...d'ailleurs le second membre est une union de tous les types COM existants : entier, flottant, interface, LPSTR, LPWSTR, BSTR....

cela permet donc de passer un tableau (SAFEARRAY par ex) contenant divers types ou simplement un variable pouvant contenir soit un int, soit une chaine, soit...

de la doc :
http://msdn2.microsoft.com/en-us/library/ms221673.aspx

un lien peut être utile : http://www.codeproject.com/csharp/unmanagedtomanaged.asp?df=100&forumid=254586&exp=0&select=1602061

ShareVB
0
Rejoignez-nous