EDIT: J'ai ajouté quelques lignes supplémentaires du programme à l'extrait de code ci-dessous.Erreur de fichier introuvable avec LoadImage() (Windows)
J'ai la ligne suivante de code dans un programme
BITMAP BMP;
HBITMAP hBMP;
hBMP = (HBITMAP)LoadImage(GetModuleHandle(NULL), "Test.bmp", IMAGE_BITMAP, 0, 0, LR_CREATEDIBSECTION | LR_LOADFROMFILE);
if (!hBMP) return 1;
GetObject(hBMP, sizeof(BMP), &BMP);
et quand je lance le programme, il se bloque. J'ai utilisé GetLastError(), qui a renvoyé 2/FILE_NOT_FOUND, mais le fichier ("Test.bmp") se trouve dans le dossier du fichier .exe. Quelqu'un peut-il indiquer ce qui ne va pas avec la ligne de code (ou si l'erreur n'est pas dans cette ligne)?
J'ai essayé de le changer à "C: \ Test.bmp" (et de mettre une copie du fichier là), et GetLastError() renvoie 0, mais le programme se bloque toujours quand j'essaie d'accéder à quelque chose comme la largeur du bitmap. –
@ Keand64: La fonction LoadImage renvoie uniquement un handle au bitmap. Pour obtenir des informations sur le handle, utilisez la fonction GetObject. Si vous montrez plus de code, ce serait utile. –
Oui, j'avais une fonction GetObject(), je ne pensais tout simplement pas que c'était pertinent à la question à l'époque. Maintenant, je l'ai ajouté à l'extrait de code que j'ai écrit. –