Foros del Web » Programación para mayores de 30 ;) » C/C++ »

Cambiar wallpaper - c++

Estas en el tema de Cambiar wallpaper - c++ en el foro de C/C++ en Foros del Web. Hola: Estoy haciendo una prueba para cambiar el wallpaper de mi escritorio solo con ejecutar el exe. Código PHP: int main ( int argc ,  char *  ...
  #1 (permalink)  
Antiguo 26/07/2006, 17:01
Avatar de Danger_  
Fecha de Ingreso: diciembre-2004
Ubicación: Queretaro, México
Mensajes: 395
Antigüedad: 20 años
Puntos: 0
Cambiar wallpaper - c++

Hola:

Estoy haciendo una prueba para cambiar el wallpaper de mi escritorio solo con ejecutar el exe.

Código PHP:
int main(int argccharargv[]) {
CString szPaper("c:\\windows\\circles.bmp");
SystemParametersInfo(SPI_SETDESKWALLPAPER, (UINT0, (void*) (const char*) szPaper, (UINT0);

Pero me da error en la compilación... C:\C++\demo2.cpp `CString' undeclared (first use this function)

Como puedo solucionarlo... Gracias
  #2 (permalink)  
Antiguo 19/08/2006, 09:05
Avatar de bitbow  
Fecha de Ingreso: julio-2006
Ubicación: Distrito Federal
Mensajes: 635
Antigüedad: 18 años, 5 meses
Puntos: 34
Hola, verifica que tengas acceso a CString y en que unidad se encuentra o si necesitas declarar esta, bueno no se mucho de C++ espero que esto te sirva.
__________________
El ego es el mayor enemigo de un hombre inteligente.
  #3 (permalink)  
Antiguo 19/08/2006, 10:03
Avatar de Instru  
Fecha de Ingreso: noviembre-2002
Ubicación: Mexico
Mensajes: 2.751
Antigüedad: 22 años, 1 mes
Puntos: 52
No estoy seguro, pero tienes que incluir la libreria que tiene la clase CString. La verdad no se cual sea, tal vez iostream o cstring.

Saludos
  #4 (permalink)  
Antiguo 19/08/2006, 14:16
 
Fecha de Ingreso: abril-2006
Ubicación: Acapulco Gro. México
Mensajes: 483
Antigüedad: 18 años, 8 meses
Puntos: 2
CString es la clase string de MFC, por tanto tu proyecto seria un proyecto MFC.

puedes sustituir CString por const char*:

int main(int argc, char* argv[]) {
const char* szPaper = "c:\\windows\\circles.bmp";
SystemParametersInfo(SPI_SETDESKWALLPAPER, (UINT) 0, (void*) (const char*) szPaper, (UINT) 0);
}

ademas tienes que incluir <windows.h> o el encabezado en donde se encuentre SystemParametersInfo y sus respectiva libreria estatica.

yo lo tengo asi:

#include <windows.h>

/*tambien puede se (int argc, char* argv[]) ó (), solo que tienes que indicar al compilador que no muestre la consola. todo depende del compilador en el Dev Cpp (MinGW) se hace con -mwindows. en Visual C++ elimina de la linea de comados _CONSOLE, aunque no se si en Visual C++ se pueda usar int main(), en un proyecto para WinAPI*/


int WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, INT)
{
const char* szPaper = "C:\\WINDOWS\\Web\\Wallpaper\\Felicidad.bmp";
SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, (void*)szPaper, 0);
return 0;
}

lo compilo en el Dev C++ y funciona muy bien solo con imagenes.bmp
la libreria estatica es user32.

Saludos.

Última edición por Nivel7; 19/08/2006 a las 14:41
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:09.