Bonjour,
Mes souvenirs en C, sont loin, ça fait 20 ans, mais je dois réaliser un programme en C++ qui récupère une image d'une caméra et l'afficher, j'ai réussi à récupérer l'image en passant pas un fichier BMP mais je souhaite passer directement par la mémoire pour gagner du temps et ça fait une semaine que je cherche la solution. Si quelqu'un à une idée, ce serai avec plaisir.

Ci joint le source qui fonctionne avec le fichier :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
// récupération de l'image 
readWithTimeout(sock, pBuf, dwDataLen, 0); 
char szFile[80]; 
// creation du fichier 
sprintf(szFile, "imagecyp.bmp", dwNumImgsRecv); 
dwNumImgsRecv++; 
int fh = open(szFile, _O_CREAT | _O_BINARY | _O_RDWR, _S_IREAD | _S_IWRITE); 
if (fh != -1) 
{ 
write(fh, pBuf, dwDataLen); 
close(fh); 
} 
// Nouvelle image 
if ( dwDataLen != 0 ) 
{ 
Bmp1 =(HBITMAP)LoadImage(NULL,TEXT("imagecyp.bmp"),IMAGE_BITMAP,0,0,LR_LOADFROMFILE); 
CStatic_Ecran.SetBitmap(Bmp2); 
CStatic_Ecran.ShowWindow(SW_SHOW); 
delete pBuf; 
}
J'ai tenté avec l'instruction :
Bmp1 =(HBITMAP)LoadImage(NULL,MAKEINTRESOURCE(pBuf), IMAGE_BITMAP,0,0,LR_CREATEDIBSECTION);

Mais sans succès.

Merci par avance.
Porschemini