J'ai créé un serveur COM ATL dans VC++ 2005. Je veux réaliser une interface définie dans une bibliothèque (* .olb). Je sais que je vais voir l'interface si je #import cette olb (en .tlh.tli). Mais je ne peux pas créer de réalisation de bout pour l'interface avec "Assistant d'interface d'implémentation" car cette interface est absente dans la liste "Interfaces" (à la fois pour les options "Registre" et "Fichier"). Pourquoi est-ce possible une telle situation? Et comment puis-je générer automatiquement la réalisation du bout? Merci d'avance.ATL "Implémenter l'assistant d'interface"
1
A
Répondre
0
J'ai trouvé un bug dans le projet. C'était un bazar avec les bibliothèques.
1
Vous pouvez modifier le fichier .idl et utiliser
[
...
]
library Something
{
importlib("somelibrary.olb");
...
}
C'est gênant cependant, la déclaration importlib doit apparaître dans le bloc de la bibliothèque . Cela est nécessaire car la bibliothèque de types contient probablement des définitions de coclasse.
Ce que vous voulez vraiment, c'est utiliser l'instruction import pour importer le IDL qui a créé la bibliothèque de types. Moins les coclasses. Si vous n'avez pas l'IDL, vous pouvez le recréer avec OleView.exe, File + View Typelib. Copiez et collez les définitions d'interface que vous voulez dans votre propre fichier .idl, puis utilisez l'instruction d'importation MIDL dans votre IDL.
Questions connexes
- 1. COM avec ATL Versioning
- 2. ATL CString or_bstr_t?
- 3. Comment implémenter la mise en place dans un serveur COM VC++ ATL?
- 4. services Atl ne pas enregistrer
- 5. C++ windows service Sans ATL
- 6. ATL et types de scrrun.dll
- 7. Arrêter proprement une application ATL
- 8. Utilisation de STL dans ATL
- 9. Comment utiliser MFC avec ATL
- 10. ATL COM Server - objet COM cretaing défini dans ATL Server à partir de ce serveur
- 11. pré-enregistrement d'une classe de fenêtre ATL
- 12. Problème de sécurité Delphi et Microsoft ATL
- 13. contrôle WebBrowser de ATL à C#
- 14. GoogleMock - Matchers et MFC \ ATL CString
- 15. visual studios 2010 service web atl
- 16. Service d'application de console ou service ATL
- 17. Macros ATL fonctionnant uniquement sur devel-computer
- 18. Utilisation des classes MFC dans ATL Project
- 19. Utilisation d'ADO ou OLEDB avec ATL
- 20. Comment implémenter efficacement une boucle d'événements?
- 21. Le client ne communiquera pas avec le service ATL
- 22. Impossible d'obtenir des points de connexion ATL fonctionnant
- 23. Énumérer les méthodes d'objet COM (IDispatch) utilisant ATL?
- 24. Est-il possible d'exécuter le service ATL comme application utilisateur
- 25. Filetage dans BHO/ATL/COM. Winapi ou autre chose?
- 26. ATL Dll Ne parvient pas à s'inscrire avec XP
- 27. Evénement de modification de texte dans ATL C++
- 28. Prise en charge multiplate-forme pour diverses classes MFC \ ATL
- 29. Utilisation du contrôle ActiveX ATL dans l'application de fenêtre WPF
- 30. Comment appeler ATL Error() dans un cpp normal
J'ai trouvé un bug dans le projet. C'était un bazar avec les bibliothèques. En tout cas, merci pour oleview façon. J'aime vraiment ça. –