Bonjour à tous,
Je suis sous Windows XP et j'utilise Visual C++ 2005 Express Edition avec le SDK .NET installé.
Je voudrais utiliser des outils d'une .dll fournit par une société tierce qui utilise la technologie COM:
In order to access OMNI database from different systems, Haverly Systems, Inc. developed an OMNI database Applications Interface (API) based on Microsoft's COM technology. This API allows user to access OMNI database from any programming environment that supports the COM technology, such as VBA, VBScript, VB, C#, and Java…
Le descriptif ne précise pas explicitement que l'on peut utiliser Visual C++ mais je crois que c'est possible.
Après quelques recherches, j'ai compris qu'il suffisait d'insérer la ligne suivante, ce que j'ai fait dans un projet vide avec en-têtes précompilés:
#import "HSIOLink.dll" no_namespace
La compilation de ce projet ne marche pas. En effet, l'importation de la .dll crée un fichier "hsiolink.tlh" qui pose problème car il fait intervenir les symboles _CollectionPtr et IDictionaryPtr qui ne sont pas reconnus.
Je crois avoir résolu le problème pour le symbole "_Collection" à l'aide de la ligne suivante:
#import "msvbvm60.dll" no_namespace rename("EOF", "adoEOF") rename("RGB", "adoRGB") rename("GetObject", "adoGetObject")
mais je ne sait pas quoi faire pour le "IDictionary".
Que puis-faire ?
En espérant que je sois dans le bon forum, merci d'avance.
Partager