<div>No se si entiendo muy bien lo que quieres hacer, sobre todo después de ver el codigo pero supongo qu elo uqe quieres es poder guardar lo que sea que tengas en la pantalla en un fichero bmp por ejemplo. Esto es relativamente facil primero te voy a poner dos funciones que necesitaras para poder hacerlo, una para grabar la imagen y otra para racabar la informacion de la estrucctura, son sacadas de la documentacion del api.</div>  <div> </div>  <div><BR>PBITMAPINFO CreateBitmapInfoStruct(HWND hwnd, HBITMAP hBmp)<BR>{ <BR>    BITMAP bmp; <BR>    PBITMAPINFO pbmi; <BR>    WORD    cClrBits; </div>  <div>    // Retrieve the bitmap color format, width, and height. <BR>    GetObject(hBmp, sizeof(BITMAP), (LPSTR)&bmp);<BR>      <BR>    // Convert the color format to a count of bits. <BR>    cClrBits = (WORD)(bmp.bmPlanes *
 bmp.bmBitsPixel); <BR>    if (cClrBits == 1) <BR>        cClrBits = 1; <BR>    else if (cClrBits <= 4) <BR>        cClrBits = 4; <BR>    else if (cClrBits <= 8) <BR>        cClrBits = 8; <BR>    else if (cClrBits <= 16) <BR>        cClrBits = 16; <BR>    else if (cClrBits <= 24) <BR>        cClrBits = 24; <BR>    else cClrBits = 32; </div>  <div>    // Allocate memory for the BITMAPINFO structure. (This structure <BR>    // contains a BITMAPINFOHEADER structure and an array of RGBQUAD <BR>    // data structures.) </div>  <div>     if (cClrBits != 24) <BR>         pbmi = (PBITMAPINFO)
 LocalAlloc(LPTR, <BR>                    sizeof(BITMAPINFOHEADER) + <BR>                    sizeof(RGBQUAD) * (1<< cClrBits)); </div>  <div>     // There is no RGBQUAD array for the 24-bit-per-pixel format. </div>  <div>     else <BR>         pbmi = (PBITMAPINFO) LocalAlloc(LPTR, <BR>                    sizeof(BITMAPINFOHEADER)); </div>  <div>    // Initialize the fields in the BITMAPINFO structure. </div>  <div>    pbmi->bmiHeader.biSize = sizeof(BITMAPINFOHEADER); <BR>    pbmi->bmiHeader.biWidth = bmp.bmWidth; <BR>   
 pbmi->bmiHeader.biHeight = bmp.bmHeight; <BR>    pbmi->bmiHeader.biPlanes = bmp.bmPlanes; <BR>    pbmi->bmiHeader.biBitCount = bmp.bmBitsPixel; <BR>    if (cClrBits < 24) <BR>        pbmi->bmiHeader.biClrUsed = (1<<cClrBits); </div>  <div>    // If the bitmap is not compressed, set the BI_RGB flag. <BR>    pbmi->bmiHeader.biCompression = BI_RGB; </div>  <div>    // Compute the number of bytes in the array of color <BR>    // indices and store the result in biSizeImage. <BR>    // For Windows NT, the width must be DWORD aligned unless <BR>    // the bitmap is RLE compressed. This example shows this. <BR>    // For Windows 95/98/Me, the width must be WORD aligned unless the <BR>    // bitmap is RLE compressed.<BR>   
 pbmi->bmiHeader.biSizeImage = ((pbmi->bmiHeader.biWidth * cClrBits +31) & ~31) /8<BR>                                  * pbmi->bmiHeader.biHeight; <BR>    // Set biClrImportant to 0, indicating that all of the <BR>    // device colors are important. <BR>     pbmi->bmiHeader.biClrImportant = 0; <BR>     return pbmi; <BR> } </div>  <div>void CreateBMPFile(HWND hwnd, LPTSTR pszFile, PBITMAPINFO pbi, <BR>                  HBITMAP hBMP, HDC hDC) <BR> { <BR>     HANDLE hf;                 // file handle <BR>   
 BITMAPFILEHEADER hdr;       // bitmap file-header <BR>    PBITMAPINFOHEADER pbih;     // bitmap info-header <BR>    LPBYTE lpBits;              // memory pointer <BR>    DWORD dwTotal;              // total count of bytes <BR>    DWORD cb;                   // incremental count of bytes <BR>    BYTE *hp;                   // byte pointer <BR>    DWORD dwTmp; </div>  <div>    pbih = (PBITMAPINFOHEADER) pbi; <BR>    lpBits = (LPBYTE) GlobalAlloc(GMEM_FIXED, pbih->biSizeImage);</div>  <div>  
 <BR>    // Retrieve the color table (RGBQUAD array) and the bits <BR>    // (array of palette indices) from the DIB. <BR>    GetDIBits(hDC, hBMP, 0, (WORD) pbih->biHeight, lpBits, pbi, <BR>        DIB_RGB_COLORS); <BR>    </div>  <div>    // Create the .BMP file. <BR>    hf = CreateFile(pszFile, <BR>                   GENERIC_READ | GENERIC_WRITE, <BR>                   (DWORD) 0, <BR>                    NULL, <BR>                   CREATE_ALWAYS,
 <BR>                   FILE_ATTRIBUTE_NORMAL, <BR>                   (HANDLE) NULL); <BR>    hdr.bfType = 0x4d42;        // 0x42 = "B" 0x4d = "M" <BR>    // Compute the size of the entire file. <BR>    hdr.bfSize = (DWORD) (sizeof(BITMAPFILEHEADER) + <BR>                 pbih->biSize + pbih->biClrUsed <BR>                 * sizeof(RGBQUAD) + pbih->biSizeImage); <BR>    hdr.bfReserved1 = 0; <BR>    hdr.bfReserved2 = 0; </div>  <div>    // Compute the offset to the array of color indices.
 <BR>    hdr.bfOffBits = (DWORD) sizeof(BITMAPFILEHEADER) + <BR>                    pbih->biSize + pbih->biClrUsed <BR>                    * sizeof (RGBQUAD); </div>  <div>    // Copy the BITMAPFILEHEADER into the .BMP file. <BR>    WriteFile(hf, (LPVOID) &hdr, sizeof(BITMAPFILEHEADER), <BR>        (LPDWORD) &dwTmp,  NULL); <BR>  </div>  <div>    // Copy the BITMAPINFOHEADER and RGBQUAD array into the file. <BR>    WriteFile(hf, (LPVOID) pbih, sizeof(BITMAPINFOHEADER) <BR>                  + pbih->biClrUsed * sizeof (RGBQUAD),
 <BR>                  (LPDWORD) &dwTmp,  NULL); <BR>        </div>  <div>    // Copy the array of color indices into the .BMP file. <BR>    dwTotal = cb = pbih->biSizeImage; <BR>    hp = lpBits; <BR>    WriteFile(hf, (LPSTR) hp, (int) cb, (LPDWORD) &dwTmp,NULL);<BR>          </div>  <div>    // Close the .BMP file. <BR>     CloseHandle(hf); <BR>      </div>  <div>    // Free memory. <BR>    GlobalFree((HGLOBAL)lpBits);<BR>}</div>  <div> </div>  <div>A continuación has de saber como usarla, te escribo el codigo de una posible lamada a salvar.</div>  <div> </div>  <div>case
 GUARDAR_COMO:<BR>    {<BR>    OPENFILENAME ofn;<BR>    char nombre_archivo[MAX_PATH]="";</div>  <div>    ZeroMemory(&ofn, sizeof(ofn));</div>  <div>    ofn.lStructSize = sizeof(ofn); <BR>    ofn.hwndOwner = hwnd;<BR>    ofn.lpstrFilter = "Imagenes (*.bmp)\0*.bmp\0Todos los ficheros (*.*)\0*.*\0";<BR>    ofn.nMaxFile = MAX_PATH;<BR>    ofn.Flags = OFN_EXPLORER | OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT;<BR>    ofn.lpstrDefExt = "bmp";<BR>    ofn.lpstrFile = nombre_archivo;<BR>   <BR>    if(GetSaveFileName(&ofn))<BR>    {<BR>     PBITMAPINFO pbi;<BR>     pbi =
 CreateBitmapInfoStruct(hwnd,hBitmap);<BR>     CreateBMPFile(hwnd,nombre_archivo,pbi,hBitmap,hDcmem);<BR>    }</div>  <div>    }</div>  <div> </div>  <div>Espero que esto te sirva de ayuda. La imagen, aunque es algo que parece evidente, que vas a salvare es la que hubiese en hDcmen. Si quieres mas informacoión dímelo y te mando un ejemplo de un programa en el que se salva lo que hay en pantalla.<BR><BR><B><I>Francisco Mota <frcostrong@hotmail.com></I></B> escribió:</div>  <BLOCKQUOTE class=replbq style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #1010ff 2px solid">  <STYLE>  .hmmessage P  {  margin:0px;  padding:0px  }  body.hmmessage  {  FONT-SIZE: 10pt;  FONT-FAMILY:Tahoma  }  </STYLE>  Saludos amigos!!.<BR> <BR>Veran sigo aprendiendo API y ahora se me ah presentado el siguiente problema.<BR> <BR>Quiero guardar lo que se muestre en pantalla, estoy juntando varias imagenes y las
 quiero guardar como una sola, es decir guardar lo que muestra la pantalla como una imagen ya sea bmp o cualquier formato. El codigo que es el que tengo muestra y guarda una sola imagen. Yo lo que quiero es guardar la pantalla completa. Espero sirva de algo el codigo.<BR><BR>#include <windows.h> <BR>#include <commdlg.h> <BR>#include <stdlib.h> <BR>#include <stdio.h> <BR>#include "viewbmp.h" <BR><BR>#define UNTITLED "(sin título)" <BR>LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM); <BR>void DibujaBitmap (HDC hdc, HBITMAP hBitmap, int xInicio, int yInicio); <BR>void PopFileInitialize (HWND); <BR>BOOL PopFileOpenDlg    (HWND, PSTR, PSTR); <BR>BOOL PopFileSaveDlg    (HWND, PSTR, PSTR); <BR>BOOL PopFileRead       (HINSTANCE, PSTR); <BR>BOOL PopFileWrite      (HWND, PSTR); <BR>void DoCaption (HWND hwnd, char *szTitleName); <BR>void OkMessage (HWND hwnd, char
 *szMessage, char *szTitleName); <BR>short AskAboutSave (HWND hwnd, char *szTitleName); <BR>          // Variables globales <BR>static char szAppName[] = "ViewBMP"; <BR>static HWND hDlgModeless; <BR>static OPENFILENAME ofn; <BR>static HBITMAP hBitmap = NULL; <BR>// ************************** Punto de entrada al programa ******* <BR>int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, <BR>                    PSTR szCmdLine, int iCmdShow) <BR>{ <BR>   MSG         msg; <BR>   HWND        hwnd; <BR>   HACCEL      hAccel; <BR>   WNDCLASSEX  wndclass; <BR>   wndclass.cbSize        = sizeof (wndclass); <BR>  
 wndclass.style         = CS_HREDRAW | CS_VREDRAW; <BR>   wndclass.lpfnWndProc   = WndProc; <BR>   wndclass.cbClsExtra    = 0; <BR>   wndclass.cbWndExtra    = 0; <BR>   wndclass.hInstance     = hInstance; <BR>   wndclass.hIcon         = LoadIcon (hInstance, szAppName); <BR>   wndclass.hCursor       = LoadCursor (NULL, IDC_ARROW); <BR>   wndclass.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH); <BR>   wndclass.lpszMenuName  = szAppName; <BR>   wndclass.lpszClassName = szAppName; <BR>   wndclass.hIconSm       = LoadIcon (NULL, IDI_APPLICATION); <BR>   RegisterClassEx (&wndclass); <BR>   hwnd = CreateWindow (szAppName, NULL,
 <BR>                          WS_OVERLAPPEDWINDOW, <BR>                          CW_USEDEFAULT, CW_USEDEFAULT, <BR>                          CW_USEDEFAULT, CW_USEDEFAULT, <BR>                          NULL, NULL, hInstance, szCmdLine); <BR>   ShowWindow (hwnd, iCmdShow); <BR>   UpdateWindow (hwnd); <BR>   hAccel = LoadAccelerators (hInstance, szAppName); <BR>   while (GetMessage (&msg, NULL, 0, 0)) { <BR>      if
 (hDlgModeless == NULL || !IsDialogMessage (hDlgModeless, &msg)) { <BR>         if (!TranslateAccelerator (hwnd, hAccel, &msg)) { <BR>            TranslateMessage (&msg); <BR>            DispatchMessage (&msg); <BR>         } <BR>      } <BR>   } <BR>   return msg.wParam; <BR>} <BR>// ************************** Procedimiento de ventana ******* <BR>LRESULT CALLBACK WndProc (HWND hwnd, UINT iMsg, WPARAM wParam, LPARAM lParam) <BR>{ <BR>    static BOOL      bNeedSave = FALSE; <BR>    static char      szFileName[_MAX_PATH]; <BR>    static char      szTitleName[_MAX_FNAME + _MAX_EXT]; <BR>    static
 HINSTANCE hInst; <BR>   HDC hDC; <BR>   PAINTSTRUCT ps; <BR>    switch (iMsg) { <BR>      case WM_CREATE : <BR>         hInst = ((LPCREATESTRUCT) lParam) -> hInstance; <BR>                         // Inicializar cuadro de diálogo común <BR>         PopFileInitialize (hwnd); <BR>                         // Procesar línea de comandos <BR>         lstrcpy (szFileName, (PSTR) (((LPCREATESTRUCT) lParam)->lpCreateParams)); <BR>         if (strlen (szFileName) > 0) {
 <BR>            GetFileTitle (szFileName, szTitleName, sizeof (szTitleName)); <BR>            if (!PopFileRead (hInst, szFileName)) <BR>               OkMessage (hwnd, "No se puede leer el archivo %s.", <BR>                                          szTitleName); <BR>            } <BR>            DoCaption (hwnd, szTitleName); <BR>            return 0; <BR>      case WM_COMMAND :
 <BR>         switch (LOWORD (wParam)) { <BR>                              // Mensajes del menú Archivo <BR>            case IDM_OPEN : <BR>               if (bNeedSave && IDCANCEL == AskAboutSave (hwnd, szTitleName)) <BR>                  return 0; <BR>                        if (PopFileOpenDlg (hwnd, szFileName, szTitleName)) { <BR>                     if
 (!PopFileRead (hInst, szFileName)) { <BR>                        OkMessage (hwnd, "No se puede leer el archivo %s.", <BR>                                                    szTitleName); <BR>                        szFileName[0]  = '\0'; <BR>                        szTitleName[0] = '\0';
 <BR>                     } else <BR>                        InvalidateRect (hwnd, NULL, FALSE); <BR>                  } <BR>                  DoCaption (hwnd, szTitleName); <BR>                  bNeedSave = FALSE; <BR>                  return 0; <BR>            case IDM_SAVE : <BR>               if
 (szFileName[0]) { <BR>                  if (PopFileWrite (hwnd, szFileName)) { <BR>                     bNeedSave = FALSE; <BR>                     return 1; <BR>                  } else <BR>                     OkMessage (hwnd, "No se puede escribir el archivo %s",
 <BR>                                                    szTitleName); <BR>                  return 0; <BR>               } <BR>                                                  // sigue proceso <BR>            case IDM_SAVEAS :
 <BR>               if (PopFileSaveDlg (hwnd, szFileName, szTitleName)) { <BR>                  DoCaption (hwnd, szTitleName); <BR>                  if (PopFileWrite (hwnd, szFileName)) { <BR>                     bNeedSave = FALSE; <BR>                     return 1; <BR>                  } else <BR>                     OkMessage (hwnd, "No se puede escribir el
 archivo %s", <BR>                                                    szTitleName); <BR>               } <BR>               return 0; <BR>            case IDM_EXIT : <BR>               SendMessage (hwnd, WM_CLOSE, 0, 0); <BR>               return 0; <BR>         } <BR>         break;
 <BR>      case WM_PAINT: <BR>         hDC = BeginPaint (hwnd, &ps); <BR>         DibujaBitmap (hDC, hBitmap, 0, 0); <BR>         EndPaint (hwnd, &ps); <BR>         return 0; <BR>      case WM_CLOSE : <BR>         if (!bNeedSave || IDCANCEL != AskAboutSave (hwnd, szTitleName)) <BR>            DestroyWindow (hwnd); <BR>         return 0; <BR>      case WM_QUERYENDSESSION : <BR>         if (!bNeedSave || IDCANCEL != AskAboutSave (hwnd, szTitleName)) <BR>            return 1;
 <BR>         return 0; <BR>      case WM_DESTROY : <BR>         if (hBitmap != NULL) <BR>            DeleteObject (hBitmap); <BR>         PostQuitMessage (0); <BR>         return 0; <BR>   } <BR>   return DefWindowProc (hwnd, iMsg, wParam, lParam); <BR>} <BR>// ************************** función para dibujar bitmaps ****** <BR>void DibujaBitmap (HDC hdc, HBITMAP hBitmap, int xInicio, int yInicio) <BR>{ <BR>   BITMAP bm; <BR>   HDC      hdcMem; <BR>   DWORD   dwSize; <BR>   POINT   ptSize, ptOrg; <BR>   hdcMem = CreateCompatibleDC (hdc); <BR>   SelectObject (hdcMem, hBitmap); <BR>   SetMapMode (hdcMem,
 GetMapMode (hdc)); <BR>   GetObject (hBitmap, sizeof (BITMAP), (LPVOID)&bm); <BR>   ptSize.x = bm.bmWidth; <BR>   ptSize.y = bm.bmHeight; <BR>   DPtoLP (hdc, &ptSize, 1); <BR>   ptOrg.x = 0; <BR>   ptOrg.y = 0; <BR>   DPtoLP (hdcMem, &ptOrg, 1); <BR>   BitBlt (hdc, xInicio, yInicio, ptSize.x, ptSize.y, hdcMem, ptOrg.x, ptOrg.y, SRCCOPY); <BR>   DeleteObject (hdcMem); <BR>} <BR>// ***** funciones para manejar los diálogos abrir/guardar archivo *** <BR>void PopFileInitialize (HWND hwnd) <BR>{ <BR>   static char szFilter[] = "Archivos de texto (*.BMP)\0*.bmp\0";<BR>                             // "Todos los archivos (*.*)\0*.*\0\0"; <BR>   ofn.lStructSize       = sizeof (OPENFILENAME);
 <BR>   ofn.hwndOwner         = hwnd; <BR>   ofn.hInstance         = NULL; <BR>   ofn.lpstrFilter       = szFilter; <BR>    ofn.lpstrCustomFilter = NULL; <BR>    ofn.nMaxCustFilter    = 0; <BR>    ofn.nFilterIndex      = 0; <BR>    ofn.lpstrFile         = NULL;          // Definido en funciones Open y Close <BR>    ofn.nMaxFile          = _MAX_PATH; <BR>    ofn.lpstrFileTitle    = NULL;          // Definido en funciones Open y Close <BR>    ofn.nMaxFileTitle     = _MAX_FNAME + _MAX_EXT;
 <BR>    ofn.lpstrInitialDir   = NULL; <BR>    ofn.lpstrTitle        = NULL; <BR>    ofn.Flags             = 0;             // Definido en funciones Open y Close <BR>    ofn.nFileOffset       = 0; <BR>    ofn.nFileExtension    = 0; <BR>    ofn.lpstrDefExt       = "txt"; <BR>    ofn.lCustData         = 0L; <BR>    ofn.lpfnHook          = NULL; <BR>    ofn.lpTemplateName    = NULL; <BR>} <BR>BOOL PopFileOpenDlg (HWND hwnd, PSTR pstrFileName, PSTR pstrTitleName) <BR>{ <BR>   
 ofn.hwndOwner         = hwnd; <BR>    ofn.lpstrFile         = pstrFileName; <BR>    ofn.lpstrFileTitle    = pstrTitleName; <BR>    ofn.Flags             = OFN_HIDEREADONLY | OFN_CREATEPROMPT; <BR>    return GetOpenFileName (&ofn); <BR>} <BR>BOOL PopFileSaveDlg (HWND hwnd, PSTR pstrFileName, PSTR pstrTitleName) <BR>{ <BR>    ofn.hwndOwner         = hwnd; <BR>    ofn.lpstrFile         = pstrFileName; <BR>    ofn.lpstrFileTitle    = pstrTitleName; <BR>    ofn.Flags             = OFN_OVERWRITEPROMPT; <BR>   return GetSaveFileName (&ofn);
 <BR>} <BR>static long PopFileLength (FILE *file) <BR>{ <BR>    int iCurrentPos, iFileLength; <BR>    iCurrentPos = ftell (file); <BR>    fseek (file, 0, SEEK_END); <BR>    iFileLength = ftell (file); <BR>    fseek (file, iCurrentPos, SEEK_SET); <BR>    return iFileLength; <BR>} <BR>BOOL PopFileRead (HINSTANCE hInst, PSTR pstrFileName) <BR>{ <BR>   if (hBitmap != NULL) <BR>      DeleteObject (hBitmap); <BR>   hBitmap = (HBITMAP)LoadImage(hInst, pstrFileName, IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE); <BR>    return hBitmap != NULL; <BR>} <BR>BOOL PopFileWrite (HWND hwnd, PSTR pstrFileName) <BR>{ <BR>    FILE  *file; <BR>    int    iLength; <BR>    PSTR   pstrBuffer; <BR>    if (NULL == (file = fopen (pstrFileName, "wb")))
 <BR>      return FALSE; <BR>    iLength = GetWindowTextLength (hwnd); <BR>    if (NULL == (pstrBuffer = (PSTR) malloc (iLength + 1))) { <BR>      fclose (file); <BR>      return FALSE; <BR>   } <BR>    GetWindowText (hwnd, pstrBuffer, iLength + 1); <BR>    if (iLength != (int) fwrite (pstrBuffer, 1, iLength, file)) { <BR>      fclose (file); <BR>      free (pstrBuffer); <BR>      return FALSE; <BR>   } <BR>    fclose (file); <BR>    free (pstrBuffer); <BR> <BR>    return TRUE; <BR>} <BR>// ************************** funciones auxiliares **************** <BR>void DoCaption (HWND hwnd, char *szTitleName) <BR>{ <BR>   char szCaption[64 + _MAX_FNAME + _MAX_EXT]; <BR>   wsprintf
 (szCaption, "%s - %s", szAppName, <BR>               szTitleName[0] ? szTitleName : UNTITLED); <BR>   SetWindowText (hwnd, szCaption); <BR>} <BR>void OkMessage (HWND hwnd, char *szMessage, char *szTitleName) <BR>{ <BR>   char szBuffer[64 + _MAX_FNAME + _MAX_EXT]; <BR>   wsprintf (szBuffer, szMessage, szTitleName[0] ? szTitleName : UNTITLED); <BR>   MessageBox (hwnd, szBuffer, szAppName, MB_OK | MB_ICONEXCLAMATION); <BR>} <BR>short AskAboutSave (HWND hwnd, char *szTitleName) <BR>{ <BR>   char szBuffer[64 + _MAX_FNAME + _MAX_EXT]; <BR>   int  iReturn; <BR>   wsprintf (szBuffer, "¿Guardar cambios actuales en %s?", <BR>               szTitleName[0] ? szTitleName : UNTITLED); <BR>   iReturn = MessageBox (hwnd, szBuffer, szAppName,
 <BR>                           MB_YESNOCANCEL | MB_ICONQUESTION); <BR>   if (iReturn == IDYES) <BR>      if (!SendMessage (hwnd, WM_COMMAND, IDM_SAVE, 0L)) <BR>         iReturn = IDCANCEL; <BR>   return iReturn; <BR>} <BR><BR>  <BLOCKQUOTE> </BLOCKQUOTE><BR>  <HR>  Express yourself instantly with MSN Messenger! <A href="http://clk.atdmt.com/AVE/go/onm00200471ave/direct/01/" target=_new>MSN Messenger</A> _______________________________________________<BR>Lista de correo Cconclase Cconclase@listas.conclase.net<BR>http://listas.conclase.net/mailman/listinfo/cconclase_listas.conclase.net<BR>Bajas: http://listas.conclase.net/index.php?gid=2&mnu=FAQ</BLOCKQUOTE><BR><p>


      <hr size=1><br><font face="Verdana" size="-2">Sé un Mejor Amante del Cine<br>¿Quieres saber cómo? <a href="http://us.rd.yahoo.com/mail/es/tagline/beabetter/*http://advision.webevents.yahoo.com/reto/entretenimiento.html">¡Deja que otras personas te ayuden!
</a>.<br></font>