Urgent - FreeImage library et c#

ymas00 Messages postés 20 Date d'inscription mercredi 6 février 2008 Statut Membre Dernière intervention 15 avril 2010 - 30 oct. 2008 à 13:34
MasterShadows Messages postés 268 Date d'inscription lundi 1 mars 2004 Statut Membre Dernière intervention 19 avril 2012 - 31 oct. 2008 à 09:34
Bonjour les cousins,

je cherche la library FreeImage qui pourra etre utiliser en c#, j'ai deja télécharger une à partir du site (freeimage.sourceforge.net) mais ça marche pas avec c#  par contre elle marche très bien avec vb.net.

Merci d'avance.

Cordialement.

@++

6 réponses

MasterShadows Messages postés 268 Date d'inscription lundi 1 mars 2004 Statut Membre Dernière intervention 19 avril 2012 12
30 oct. 2008 à 14:01
Salut, ben la bib fonctionne en C#, j'avais eu à utiliser cette bib pour mon projet BTS.

imaginons que dans cette bib tu ais une fonction du style :

int FreeImageChangeColorAtPixel(int& x, int& y, uint color);

en C#, tu écris ceci :

[DllImport("FreeImage.dll", EntryPoint="FreeImageChangeColorAtPixel"]
public int ChangeColorAtPixel(ref int x, ref int y, uint color);

et hop là boum, ça fonctionne...

En espérant que cela puisse t'aider...
0
ymas00 Messages postés 20 Date d'inscription mercredi 6 février 2008 Statut Membre Dernière intervention 15 avril 2010
30 oct. 2008 à 16:49
Merci MasterShadows pour ta réponse, mais le problème c'est au niveau de la dll,  ou je dois mettre cette dll et comment faire pour que je puisse y accéder?

Merci d'avance.
0
MasterShadows Messages postés 268 Date d'inscription lundi 1 mars 2004 Statut Membre Dernière intervention 19 avril 2012 12
30 oct. 2008 à 18:36
Une des manières les plus simple serait de mettre la dll dans ton répertoire de debug.
Ensuite pour y avoir accès, tu écris :

string dllFreeImagePath = string.Format("{0}\\{1}", Application.StartupPath, "FreeImage.dll");

Ensuite :

[DllImport(dllFreeImagePath, .........)]

En espérant t'avoir aidé, @+
0
xmox667 Messages postés 357 Date d'inscription jeudi 8 juin 2006 Statut Membre Dernière intervention 26 décembre 2011 4
30 oct. 2008 à 18:36
Salut,
Tu peux la mettre dans le répertoire de ton exécutable.
A+
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ymas00 Messages postés 20 Date d'inscription mercredi 6 février 2008 Statut Membre Dernière intervention 15 avril 2010
30 oct. 2008 à 18:46
J'ai trouvé la solution, j'ai utilisé FreeImage.Net wrapper pour accéder à FreeImage.dll

Merci  MasterShadows.

A bientot. 
0
MasterShadows Messages postés 268 Date d'inscription lundi 1 mars 2004 Statut Membre Dernière intervention 19 avril 2012 12
31 oct. 2008 à 09:34
Salut, désolé du retard, mais je vais répondre à ta précédente question :

Imagine que tu travailles sur un project qui requiert plusieurs dll.

Exemple :
   - Game1.exe
   - Physic.dll
   - IA.dll
   - Audio.dll
   - Input.dll
   - Gui.dll

Et bien si ton project principal (Game1.exe) référence toutes les dll citées, lorsque tu construiras le project, les dll se retrouveront dans ton répertoire de travail (normalement DEBUG)

Donc oui tu peux mettre tous les fichiers que tu veux dans ton répertoire de 'travail' et tu peux accéder à ces fichiers en faisant simplement : Application.StartupPath + nom_fichier

@+
0
Rejoignez-nous