En este hilo del foro inglés se trata la perdida memoria
Allí se dan las soluciones para resolver este bug. Porqué no se publica también en el foro español ???
&
En este hilo del foro inglés se trata la perdida memoria
Allí se dan las soluciones para resolver este bug. Porqué no se publica también en el foro español ???
&
void TransBmp( HBITMAP hBitmap, int iXsize, int iYsize,
COLORREF rgbTransparent, HDC hDC,
int iXOffset, int iYOffset, int iWidth, int iHeight )
{
HDC mDC, nDC;
HBITMAP hMask, hBmOld1, hBmOld2;
mDC = CreateCompatibleDC( hDC );
if( mDC )
{
hBmOld1 = ( HBITMAP ) SelectObject( mDC, hBitmap );
hMask = CreateBitmap( iXsize, iYsize, 1, 1, NULL );
if( hMask )
{
nDC = CreateCompatibleDC( hDC );
if( nDC )
{
hBmOld2 = ( HBITMAP ) SelectObject( nDC, hMask );
SetBkColor( mDC, rgbTransparent );
BitBlt( nDC, 0, 0, iXsize, iYsize, mDC, 0, 0, SRCCOPY );
SetStretchBltMode( hDC, COLORONCOLOR );
StretchBlt( hDC, iXOffset, iYOffset, iWidth, iHeight,
mDC, 0, 0, iXsize, iYsize,
SRCINVERT );
StretchBlt( hDC, iXOffset, iYOffset, iWidth, iHeight,
nDC, 0, 0, iXsize, iYsize,
SRCAND );
StretchBlt( hDC, iXOffset, iYOffset, iWidth, iHeight,
mDC, 0, 0, iXsize, iYsize,
SRCINVERT );
SelectObject( nDC, hBmOld2 );
DeleteDC( nDC );
}
DeleteObject( hMask );
}
SelectObject( mDC, hBmOld1 );
DeleteDC( mDC );
}
}No se trataba de una perdida de memoria, sino de un buffer no inicializado, que además no hacia falta. Y ya se ha corregido.
Pero no habia perdida alguna de memoria ![]()
Gracias Antonio y Lucas por responder. Antonio, solo copié el título del hilo en inglés, sabía que no era una pérdida de memoria. Trabajo con la versión FWH 12.04 y en una de mis aplicaciones tenía la pérdida de bitmaps. Mi reclamo, por llamarlo de alguna manera, es que si la solución se desarrolla en el foro en inglés también se publique en el foro español. NO todo el hilo pero si el código que soluciona este problema. Era solo eso. Muchas gracias nuevamente.
Saludos
Horacio,
tienes toda la razón, tendría que haber comentado la solución en el foro en español tambien ![]()
gracias