Changer le fond d'écran

MorbhAck Messages postés 127 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 5 août 2007 - 14 janv. 2007 à 21:22
MorbhAck Messages postés 127 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 5 août 2007 - 16 janv. 2007 à 19:38
Bonsoir a tous !

J'ai un 'tit problème.
Je sais changer le fond d'écran en ecrivant dans la BDR
mais j'ai remarqué que lorsque le fichier a un paramêtre
Alpha (png, jpeg, jpg, gif, ...) le bureau n'est pas redessiner
ce qui fait que le fond d'écran n'est pas appliquer !

J'ai tester avec par exemple un fichier Bitmap
et la le fond d'écran et redessiner et Apliquer.
J'utilise aussi une fonction pour Mettre a jour le fond d'écran:
SystemParametersInfo (SPI_SETDESKWALLPAPER,0,File,SPIF_UPDATEINIFILE | SPIF_SENDCHANGE);
Mais sa ne marche toujours que avec les fichier bmp , ....

6 réponses

cs_sam20 Messages postés 184 Date d'inscription lundi 31 juillet 2006 Statut Membre Dernière intervention 26 mai 2016 3
15 janv. 2007 à 17:24
Salut.
Tu dois activer l'activeDesktop pour les fichiers autres que bmp.

#include <Windows.h>
#include <WinInet.h>
#include <ShlObj.h>

int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int iShowCmd)
{
CoInitialize (NULL) ;
HRESULT hr;
IActiveDesktop *pActiveDesktop;

 hr = CoCreateInstance(CLSID_ActiveDesktop, NULL, CLSCTX_INPROC_SERVER,
IID_IActiveDesktop, (void**)&pActiveDesktop);

LPCWSTR wcPath = L"monfichier.jpg" ;
if (pActiveDesktop -> SetWallpaper (wcPath, 0) != S_OK)
{
//The method has failed...
}

 pActiveDesktop->Release();
CoUninitialize () ;
return0 ;
}
0
MorbhAck Messages postés 127 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 5 août 2007
15 janv. 2007 à 19:13
Je pourrai juste savoir quelle bibliothèque il utilise
0
MorbhAck Messages postés 127 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 5 août 2007
15 janv. 2007 à 20:10
J'ai un problème de link :s

projet.obj : error LNK2001: unresolved external symbol "void __cdecl ApplyWallPaper(char *)" (?ApplyWallPaper@@YAXPAD@Z)
Debug/projet.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.

J'utilise Visual C++ 6.0 (sans MFC)
0
cs_sam20 Messages postés 184 Date d'inscription lundi 31 juillet 2006 Statut Membre Dernière intervention 26 mai 2016 3
15 janv. 2007 à 21:02
Mille excuses.
#pragmacomment (lib, "shell32.dll")
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
MorbhAck Messages postés 127 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 5 août 2007
15 janv. 2007 à 21:31
! J'ai toujours le même problème
J'ai pourtant tout essayer






#pragma comment (lib, "shell32.lib")



#import "shell32.dll"
...
...

projet.obj : error LNK2001: unresolved external symbol "void __cdecl ApplyWallPaper(char *)" (?ApplyWallPaper@@YAXPAD@Z)
Debug/projet.exe : fatal error LNK1120: 1 unresolved externals
Error executing link.exe.
0
MorbhAck Messages postés 127 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 5 août 2007
16 janv. 2007 à 19:38
J'adore VC++6.0 !
Une fois le problème résolu il trouve un autre problème !

shell32.lib(shguid.obj) : fatal error LNK1103: debugging information corrupt; recompile module
Error executing link.exe.
projet.exe - 1 error(s), 0 warning(s)

trop cool !
0
Rejoignez-nous