Comment utiliser tlb fichiers en C++ natif de projet

J'ai un tlb fichiers contenant une déclaration de fonction que j'ai besoin d'utiliser.

Si j'utilise

#import "type_library.tlb"

Je peux correctement référence à la fonction de mon code:

tlb_namespace::required_function();

Mais quand je compile le projet à l'éditeur de liens dit que tlb_namespace::required_function est un symbole externe non résolu.

Comment puis-je réussi à construire ce type de projet?

MODIFIER:

J'ai utilisé le même type de bibliothèque dans un faux VBA access project. J'ai ajouté la référence à la bibliothèque de type et j'ai remarqué que certains de la fonction contenue dans la bibliothèque de type sont correctement appelé. Mais certains d'entre eux ne le sont pas. VBA dit qu'Il ne peut pas localiser leur point d'entrée dans la dll.

Cela peut-il expliquer le symbole externe non résolu lors de la construction de c++ application?

J'ai aussi remarqué que le défaut de la fonction sont déclarées dans le tlb comme ceci:

UPPER_function_name

mais dans le dll sont déclarées comme ceci:

Upper_function_name

Peut-être cela le problème?

Est-il possible de résoudre ce genre d'erreur en modifiant directement le binaire fichier tlb ou une dll?

est #import "type_library.tlb" la seule directive #import pour ce tlb dans votre projet. Il réside dans le même rpc appel de fonction? Comment est required_function définis dans le générés .tlh et .tli fichiers?
Le projet pour l'instant est très simple de sorte que le #import est juste l'un et résider dans le même .fichier cpp de l'appel. J'ai essayé de générer .tlh et .tli fichiers... elles n'apparaissent que si je vais à la propriété du projet\Préprocesseur Générer Prétraitées de fichier. Cependant, je probablement ne pas les ajouter dans un mode approprié pour le projet parce que si je le fais, je reçois un autre linker erreur.
vous n'avez pas à les ajouter. Ils seront créés lors de la construction de votre communiqué de presse/dossier de débogage, regardez donc là-haut.
Les fichiers sont créés mais maintenant linker dit: "ne peuvent pas trouvé .\Debug\stdafx.obj
vous avez d'autres questions, évidemment. essayer de tout reconstruire, si il y a encore des erreurs, poste à plein journal de génération. il est difficile de dire de cette façon

OriginalL'auteur sblandin | 2013-03-13