begin process at 2012 02 11 14:13:07
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Divers

 > 

Général

 > 

Utilisation d'une DLL sans .DEF et .LIB


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Utilisation d'une DLL sans .DEF et .LIB

jeudi 5 juillet 2007 à 19:40:56 | Utilisation d'une DLL sans .DEF et .LIB

ZJP

Bonjour,

Venant de Blitz3D (Basic) et developant depuis peu sous DEVC++ et Code::block, mon problême est le suivant: Comment utiliser des DLLs Classiques ( Utilisable sous VB6 sans problême a l'aide d'une petite moulinette maison fabriquant un module de déclaration en .bas ) en C/C++ sans passer par les .DEF ou .LIB

Sous Blitz3D, les DLLs sont interfacées a l'aide d'un fichier de définition Ici un exemple concrêt. Je n'ai que la DLL et le fichier de déclaration suivant (extrait) :
[code]
.lib "Blitzpx.dll"
pxBodyCreatePlane%(x#, y#, z#):"_pxBodyCreatePlane@12"
pxBodyCreateCube%(dx#, dy#, dz#, mass#):"_pxBodyCreateCube@16"
pxBodyCreateSphere%(radius#, mass#):"_pxBodyCreateSphere@8"
pxBodyCreateCapsule%(height#, radius#, mass#):"_pxBodyCreateCapsule@12"
pxBodyCreateCylinder%(radius#, height#, nbEdge%, mass#):"_pxBodyCreateCylinder@16"
pxBodyCreateHull%(vbank*, nvert%,mass#):"_pxBodyCreateHull@12"
pxBodyCreateHullFromSSM%(surf%, mass#):"_pxBodyCreateHullFromSSM@8"

pxCreateTriMeshPmap%(vbank*, fbank*, MESH_NBVERTICES%, MESH_NBFACES%, file_name$, pMap%):"_pxCreateTriMeshPmap@24"
pxCreateTriMeshFromPmap%(triangleMesh%, mass#):"_pxCreateTriMeshFromPmap@8"
pxCreateTriMesh%(vbank*, fbank*, MESH_NBVERTICES%, MESH_NBFACES%, mass#):"_pxCreateTriMesh@20"
pxCreateTerrain%(nSize%, bank*, scale_x#, scale_y#, scale_z#):"_pxCreateTerrain@20"
pxCreateTerrainFromMesh%(vbank*, fbank*, MESH_NBVERTICES%, MESH_NBFACES%, axis#):"_pxCreateTerrainFromMesh@20"
pxCreateTerrainPmap(vbank*, fbank*, MESH_NBVERTICES%, MESH_NBFACES%, axis#, file_name$, pMap%):"_pxCreateTerrainPmap@28"
pxTestTriMesh%(entity%, mass#):"_pxTestTriMesh@8"
pxCreateTriMeshToFile%(vbank*, fbank*, MESH_NBVERTICES%, MESH_NBFACES%, fname$):"_pxCreateTriMeshToFile@20"
pxCreateTriMeshFromFile%(fname$, mass#):"_pxCreateTriMeshFromFile@8"
[/code]

Extrait du fichier .decls du wrapper de Physx ( Ageia) à transformer en "include_quelque_chose.h" afin d'exploiter cette DLL sous C/C++. Je sais convertir un .decls de Blitz3d vers un "module_quelque_chose.bas" de déclarations pour VB6, mais je rame pour faire la même chose pour le C.


Merci

Jean-Pierre.

jeudi 5 juillet 2007 à 21:39:53 | Re : Utilisation d'une DLL sans .DEF et .LIB

BruNews

Administrateur CodeS-SourceS
Réponse acceptée !
hdll = LoadLibrary(...)
ensuite GetProcAddress() pour obtenir pointeurs de fonctions

Pour _pxBodyCreatePlane@12 par exemple, le nom exporté devrait être pxBodyCreatePlane à passer à GetProcAddress.

ciao...
BruNews, MVP VC++


Cette discussion est classée dans : dll, mesh, mass, vbank, fbank


Répondre à ce message

Sujets en rapport avec ce message

DLL en C++, svp :( [ par NitRic ] Ca fait 4 jours que j'essaie de créée une simple DLL qui ne fait afficher qu'un simple MessageBox et ca ne fonctionne pas... :\Voici mon code au compl Probleme D'ordi [ par Ben-J ] J'ai un Probleme...Suite a une erreur de manip j'ai un prob avec les dll de mon ordi , la plupart des app bug a cause d'une exportation manquante NTDL dll C++ avec VB? harg! je craque! [ par BlackWizzard ] comment acceder aux element visual basic via une dll c++?par exemple, comment recuperer la valeur du pixel(3,2), changer la valeur de sa couleur et ap prob avec une dll [ par BlackWizzard ] Salut!je voudrais faire une dll avec un niveau tres bas...j'ai deja créé une dll de cryptage en me basant sur un code simple...la chose que je compren ouverture de base Access [ par denis ] salut!voila mon probleme :j'ai cree une dll dans laquelle il y a une ouverture de base access au moyen d'une classe qui dérive de la classe CRecordset importer une DLL [ par sylfeline ] Comment faire pour utiliser une DLL externe avec VC++ ?Le problème venant que la DLL à été faite avec VB, j'ai 3 fichier générer : .DLL, .Lib et .exp Prob avec des dll (creation et utilisation) [ par DDway ] Voila : mon prob est fort simple :comment avec VC++ on creer une dll et comment on l'utilise dans une application(un exemple bete et mechant m'aiderai ODBC Connect dialog: lacks text if api called from dll [ par mfritschi ] hi,i am writing an abstract data access framework. it enables us amongother things to access databases without being interested in theactual underlyin Afficher un dialog modal dans une dll d'extension... [ par MadPlop ] J'ai cree la DLL avec une classe de dialogue (avec la ressource de dialogue associee) et une autre classe. Les fonctions de ces classes fonctionnent s dll pour asp avec connection odbc [ par denis ] salut!voila mon probleme :j'ai cree une dll dans laquelle il y a une ouverture de base access au moyen d'une classe qui dérive de la classe CRecordset


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 4,571 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales