Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1545 connectés 

  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  utilisation de blibotheque C++ en C#

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

utilisation de blibotheque C++ en C#

n°754537
vonm
Posté le 07-06-2004 à 11:40:08  profilanswer
 

Bonjour,
 
je dispose d'une bibliotheque C++ (Ann :  
http://www.cs.umd.edu/~mount/ANN/) que je souhaiterais utiliser en C#.
je ne sais pas quelle peut etre la meilleure solution pour faire cela.
 
aureiz vous une idee sur les differentes methodes qui s'offrent a moi ?
 
merci d'avance
 
v.

mood
Publicité
Posté le 07-06-2004 à 11:40:08  profilanswer
 

n°754573
HelloWorld
Salut tout le monde!
Posté le 07-06-2004 à 12:11:40  profilanswer
 

Ecrire un wrapper en Managed C++.


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
n°754579
vonm
Posté le 07-06-2004 à 12:18:24  profilanswer
 

HelloWorld a écrit :

Ecrire un wrapper en Managed C++.


 
Ca y est, le mot est laché !!! ;)
le soucis est que je ne suis pas a l'aise en C++ (euphemisme pour dire que je suis une bille) et que je n'ai pas envie de me lancer dans ce genre de dev car:
- je n'aime pas le C++
- ca va me prendre un temps monstre avec tous les pbs que je vais rencontrer.
 
en fait, j'aurais surtout voulu savoir si un outil permettant de creer ce wrapper n'existait pas deja.
A ma connaissance, il existe ce genre d'outil qui permet de passer d'une DLL a du code managé !
 
auriez vous une idee ?
 
merci d'avance
 
v.

n°754788
HelloWorld
Salut tout le monde!
Posté le 07-06-2004 à 13:58:05  profilanswer
 

vonm a écrit :


A ma connaissance, il existe ce genre d'outil qui permet de passer d'une DLL a du code managé !


Lequel ?
Le probleme n'est pas la dll, mais les fichiers de déclaration, structures de données, etc... écrits en C++.
Dotnet ne fonctionne pas pareil : pas d'héritage multiple, gestion auto de la mémoire, pas de STL & templates, ...
Non, faut faire un wrapper.
Une solution est peut être SWIG, qui supporte le C#. Mais je l'ai jamais testé avec .Net, et il doit y avoir des limites quand même (généricité, héritage multiple, ...)
http://www.swig.org/


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
n°754806
vonm
Posté le 07-06-2004 à 14:07:13  profilanswer
 

Citation :

Lequel ?


 
aucune idee, un collegue vient de me dire que ca existait et de regarder dans la doc de visual studio mais je n'ai pas cherche.
 

Citation :

Le probleme n'est pas la dll, mais les fichiers de déclaration, structures de données, etc... écrits en C++.
Dotnet ne fonctionne pas pareil : pas d'héritage multiple, gestion auto de la mémoire, pas de STL & templates, ...
Non, faut faire un wrapper.


 
je suis bien d'accord.
mais a mon avis, etant donne que le code en question est tres simple (n'utilise aucune fonctionnalite propre a une plateforme et que du c++ standard) je pensais qu'un outil de portage aurait pu faire ca.
en meme temps, tu vas me repondre que s'il est si simple, ca sera facile de faire un wrapper... ;)
 

Citation :

Une solution est peut être SWIG, qui supporte le C#. Mais je l'ai jamais testé avec .Net, et il doit y avoir des limites quand même (généricité, héritage multiple, ...)
http://www.swig.org/


 
j'ai regarde rapidement, mais c'est ultra simpliste.
bon, allez je vais me lancer.
sais-tu ou je peux trouver de la doc accessible sur ces wrappers ???
 
merci d'avance
 
v.

n°754820
Taz
bisounours-codeur
Posté le 07-06-2004 à 14:10:50  profilanswer
 

bref tu connais ni C# ni C++ ... et toujours pas google ni même le clic_sur_lien_pour_aller_sur_un_site_web

n°754840
vonm
Posté le 07-06-2004 à 14:20:43  profilanswer
 

Taz a écrit :

bref tu connais ni C# ni C++ ... et toujours pas google ni même le clic_sur_lien_pour_aller_sur_un_site_web


 
si,  
je pense etre capable de me demerder correctement en C# et connaitre suffisamment de choses en C++ pour etre capable de dire que j'aime pas ca !
 
effectivement, j'aurais pu me debrouiller avec google pour trouver de la doc sur les wrappers.
 
mais la, la question etait posee a la personne qui me repond depuis le debut (HelloWorld en l'occurrence) et en aucun cas a toi.
 
je te remercie donc de ta precieuse participation a ce fil de discussion mais je te remercie aussi d'eviter de m'aider par la suite.
 
a bon entendeur...
 
v.

n°754874
HelloWorld
Salut tout le monde!
Posté le 07-06-2004 à 14:45:44  profilanswer
 

Citation :

aucune idee, un collegue vient de me dire que ca existait et de regarder dans la doc de visual studio mais je n'ai pas cherche.


Il doit faire référence à DllImport. C'est bien pour utiliser 2 ou 3 fonctions en C, c'est pas fait pour utiliser des classes C++.
 

Citation :

je suis bien d'accord.
mais a mon avis, etant donne que le code en question est tres simple (n'utilise aucune fonctionnalite propre a une plateforme et que du c++ standard)


Justement, y'a rien du C++ standard dans .Net. MC++ utilise System::String, C++ utilise std::string, et c'est pareil pour tout le reste. C'est loin d'être si simple...
 

Citation :

sais-tu ou je peux trouver de la doc accessible sur ces wrappers ???


Cherche de la doc sur MC++, sur le Marshaling.
http://www.developer.com/net/cplus/article.php/3096281


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
n°754889
vonm
Posté le 07-06-2004 à 14:55:25  profilanswer
 

merci beaucoup pour ton aide,
 
je m'y attelle de ce pas.
 
a+
 
v.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  utilisation de blibotheque C++ en C#

 

Sujets relatifs
pb d'utilisation des thread sous linux - Résoluutilisation boite de dialogue MFC
pb avec utilisation de winsockutilisation de wxhtmlwindow
Utilisation de CTabCtrl VC++Problème d'utilisation de PEAR::DB
Probleme d'utilisation des variables je crois (PHP + SVG)[JAVA ]utilisation de la classe Vector
utilisation d'une fonction excel avec VB[html/ccs] Utilisation d'un preload
Plus de sujets relatifs à : utilisation de blibotheque C++ en C#


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR