Cuando no necesites mas del Bitmap, tenés que hacer un DeleteObject....
Código:
var
hBmp : HBITMAP;
Bmp : TBitmap;
begin
...
hBmp := CreateDIBitmap( GetWindowDC(GetDesktopWindow()), ... );
Try
Bmp := TBitmap.Create;
Try
Bmp.Handle := hBmp;
Bmp.SaveToFile( 'c:\...' );
finally
Bmp.Free;
end;
finally
DeleteObject(hBmp);
end;
...
PD: Acordate que lo que te pasé es un código resumido, porque lo único que querías saber, es como asignar un HBITMAP a un TBitmap.