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 :
J'ai tenté avec l'instruction :
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; }
Bmp1 =(HBITMAP)LoadImage(NULL,MAKEINTRESOURCE(pBuf), IMAGE_BITMAP,0,0,LR_CREATEDIBSECTION);
Mais sans succès.
Merci par avance.
Porschemini
Partager