Comment utiliser SetPixel dans ma DLL ?

YoYoDev21 Messages postés 1 Date d'inscription vendredi 2 juillet 2004 Statut Membre Dernière intervention 23 avril 2005 - 23 avril 2005 à 12:31
cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 - 23 avril 2005 à 13:02
Bonjour,

Je développe une DLL en C afin d'accélérer certain traitement fait dans un programme VB6.
Entre autre, je voudrais que la DLL remplisse elle même pixel par pixel une image en mémoire dont les couleurs sont stockées dans un tableau.

Voici un morceau largement simplifié de ma fonction, le tableau n'est même pas pris en compte ici :
DLLIMPORT void __stdcall afficher ( HWND hwndImage )
{
int i, j;
HDC hDc;

hDc = GetDC(hwndImage);

for ( i = 0 ; i < 500 ; i++ )
for ( j = 0 ; j < 200 ; j++ )
SetPixel ( hDc, i, j, RGB(200, 100, 0) );
}

Lorsque je compile, le compilateur me renvoie l'erreur suivante :
[Linker error] undefined reference to [mailto:`SetPixel@16' `SetPixel@16']
ld returned 1 exit status

J'utilise Dev-C++

Est-ce que quelqu'un connaîtrait la solution à ce problème ?

Merci d'avance

1 réponse

cs_DARKSIDIOUS Messages postés 15814 Date d'inscription jeudi 8 août 2002 Statut Membre Dernière intervention 4 mars 2013 131
23 avril 2005 à 13:02
Oublie Setpixel si tu veux plus de rapidité. Je te conseille plutôt
d'aller voir ma source VB nommée DKS_Gestion_Image : elle utilise la
fonction GetDIBits, et elle est environ 35 fois plus rapides que
l'utilisation de GetPixel/SetPixel sous VB !

DarK Sidious

Un API Viewer (pour le VB, VB.NET, C, C# et Delphi) : www.ProgOtoP.com/popapi/
Rejoignez-nous