TreCool0
Messages postés16Date d'inscriptionmardi 17 mars 2009StatutMembreDernière intervention15 avril 2009
-
20 mars 2009 à 16:46
TreCool0
Messages postés16Date d'inscriptionmardi 17 mars 2009StatutMembreDernière intervention15 avril 2009
-
23 mars 2009 à 09:09
Bonjour,
je développe actuellement une application en Visual C++ sous Visual C++ 2008 Express, et utilisant DirectShow.
Dans cette application, à un moment donné, je récupère un objet de type BSTR et j'aimerais l'ajouter aux éléments d'une comboBox. Ne sachant trop comment l'insérer sous la forme que je voulais (et acceptée par le compilateur, j'ai pondu le code suivant (ouais, je sais, c'est moche, c'est codé à l'arrache) :
J'ai donc pour cela dû ajouter les include suivants : #include <string> et #include <String>.
Or, au moment de l'édition des liens, je reçois le message d'erreur suivant :
error LNK2022: échec de l'opération sur les métadonnées (8013118D) : Informations de disposition incohérentes dans des types dupliqués
D'après la msdn (ici), cela vient du fait qu'un type (à priori string ou String, vu que c'est quand j'utilise l'un des deux que je reçois l'erreur) est défini dans deux modules, mais de façon différente. Quelqu'un peut-il m'aider et me dire ce que je peux faire pour résoudre ce problème?
Sinon, s'il existe un autre moyen d'insérer l'objet de type BSTR dans la comboBox, je suis preneuse aussi!
TreCool0
Messages postés16Date d'inscriptionmardi 17 mars 2009StatutMembreDernière intervention15 avril 2009 23 mars 2009 à 09:09
Il y a une petite erreur dans ta ligne de code, en fait, c'est :
String ^cstr=gcnew String((LPCTSTR)o);
Mais en revanche, ça marche très bien! Il ne m'affiche plus d'erreur à l'édition de liens, et ma String s'affiche bien dans la comboBox!
Merci beaucoup, j'aurais pu chercher encore longtemps!