2016-03-30 1 views
-1

Je me demande ce que la procédure est pour l'importation de classes d'une DLL dans un programme C++ est? C'est une DLL prédéfinie faite par TI, donc je n'ai pas accès aux fichiers .h ou .lib. J'ai regardé autour de SO et toutes les solutions semblent exiger que vous ayez un accès développeur à la DLL. Ce que je ne suis pas car je ne travaille pas pour TI. La fonction loadlibrary ne semble pas vouloir ouvrir la DLL. Le programme ne parvient pas à l'ouvrir à chaque fois. Je suis à perte et toute aide est appréciée.Comment importer des classes à partir d'une DLL prédéfinie en C++ ou en C#?

Pour donner son contexte le TI.ZPI.dll qui est utilisé par leur programme appelé Ztool pour exécuter et gérer les réseaux Zigbee. J'essaie d'accéder aux fonctions pour pouvoir écrire ma propre version de Ztool qui a plus de fonctionnalités. La littérature pour le ZPI dit qu'il peut être implémenté en Visual Basic, C#, C++, J # et JScript

+0

Ne dérobez pas de code propriétaire. –

+0

Il s'agit d'un assembly .NET, non directement utilisable depuis un programme C++ * non géré. –

+0

Comment volent-ils si c'est open source? Et tous les outils sont libres d'utiliser? – Jnpijak

Répondre

-1

Ce blog décrit comment créer une bibliothèque à partir d'une DLL.

https://adrianhenke.wordpress.com/2008/12/05/create-lib-file-from-dll/

J'utilise aussi depends.exe pour voir quelles fonctions sont disponibles dans la DLL. Depends.exe a été distribué dans les anciens SDK Windows.

+0

J'ai essayé et il retourne cette C: \ Program Files (x86) \ Microsoft Visual Studio 14.0> dumpbin/exports C: \ ti \ simpl eLink \ zstack_home_1_02_02a_44539 \ Tools \ Z-Tool \ TI.ZPI. dll Microsoft (R) COFF/PE Dumper Version 14.00.23506.0 Droit d'auteur (C) Microsoft Corporation. Tous les droits sont réservés. vidage du fichier C: \ ti \ SimpleLink \ zstack_home_1_02_02a_44539 \ Tools \ Z-Tool \ TI.ZPI.dll Type de fichier: DLL Résumé 2000 .reloc 62000 .text Et fondamentalement, il n'extrait rien. – Jnpijak

+0

Cela signifie simplement qu'il n'a pas de fonctions C disponibles. De votre question d'origine, il semblerait que ce soit DLL de l'assembly .NET alors. Que se passe-t-il lorsque vous l'enregistrez ou est-ce déjà dans le GAC? - à partir de quand vous l'avez installé. Est-il disponible en tant qu'assemblage dans Visual Studio? – kgorham

+0

Ah ok c'est logique. Comment puis-je l'enregistrer? Il n'est pas disponible en tant qu'assemblage dans Visual Studio. Il est donné lorsque vous téléchargez un programme appelé Ztool de Texas Instruments. De plus, depends.exe n'affiche pas les fonctions contenues dans la DLL, même si elle ne montre aucun paquet manquant. – Jnpijak