Rafraîchir le bureau (Active desktop)

cs_hips Messages postés 2 Date d'inscription vendredi 16 septembre 2005 Statut Membre Dernière intervention 20 septembre 2005 - 16 sept. 2005 à 15:42
cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 - 20 sept. 2005 à 11:38
Bonjour,



Est-ce que quelqu'un saurait rafraîchir le bureau après avoir mis à jour la base de registre avec mon nouveau fond écran (jpg) ?



Merci d'avance.

3 réponses

cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 22
17 sept. 2005 à 17:00
Salut,
Pour changer de fond d'écran et mettre à jour automatiquement utilise l'api SystemParametersInfo.
Voici un exemple :

'déclaration de l'api
Private Declare Function SystemParametersInfo Lib "user32" Alias "SystemParametersInfoA" (ByVal uAction As Long, ByVal uParam As Long, ByVal lpvParam As Any, ByVal fuWinIni As Long) As Long

Private Const SPI_SETDESKWALLPAPER = 20
Public Const SPIF_SENDWININICHANGE = &H2
Public Const SPIF_UPDATEINIFILE = &H1

'code pour appliquer le nouveau fond d'ecran

Dim RetVal As Long 'retour de la valeur
Dim sFile As String

sFile = "c:\MaPhoto.bmp"

RetVal = SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, sFile, SPIF_SENDWININICHANGE Or SPIF_UPDATEINIFILE)

Tester avec une image au format bmp je ne sais pas si sa passe avec du jpg
Bon courage
0
cs_hips Messages postés 2 Date d'inscription vendredi 16 septembre 2005 Statut Membre Dernière intervention 20 septembre 2005
20 sept. 2005 à 09:30
Ben oui, mais ça ne marche pas avec du jpg. c'est pour ça que je
passais par la base de registre, mais je n'arrive pas à rafraîchir
l'écan après les modifications!



J'ai donc utilisé la même méthode que toi mais en convertissant mes images en bmp.



Dim pdImgfnd As IPictureDisp



Set pdImgfnd = LoadPicture(ImageJpg)

SavePicture pdImgfnd, NewImageBmp



Le reste c'est un peu le même code que toi !



Merci quand même.
0
cs_Willi Messages postés 2375 Date d'inscription jeudi 12 juillet 2001 Statut Modérateur Dernière intervention 15 décembre 2018 22
20 sept. 2005 à 11:38
De toute facon quand tu changes ton fond d'écran dans les propriétés d'affichage ton image est convertit en BMP avant d'être appliqué !

Donc oui tu fais un loadpicture dans un picturebox puis un savepicture et après sa roule tu colles mon code derrière et sa marche j'ai fait le test !
0
Rejoignez-nous