Ok, bien déjà tu a :
Declare Function GetDesktopWindow Lib "user32" () As Long
pour récupérer le handle (l'identifiant windows) de la fenêtre qui constitue le bureau, donc tu peut faire des opérations graphiques dedans mais je n'ai jamais essayé ça...
Declare Function PaintDesktop Lib "user32" (ByVal hdc As Long) As Long
ça permet de copier dans une zone définie le fond d'écran du bureau. Utilise le comme ça :
Dim lgRep As Long
Me.AutoRedraw = True
' Affiche sur le fond de la fenêtre le fond du bureau
lgRep = PaintDesktop(Me.hdc)
Me.Refresh
' Place ensuite le fond dans un contrôle image pour visualiser
' le tout en entier
Image1.Stretch = True
Set Image1.Picture = Me.Image
Pour changer le fond d'écran (seulement pour les fichiers bmp)
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
Dim RetVal As Long
'remplacer le fichier par celui de votre choix
f$ = "c:\test.bmp"
RetVal = SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, f$, 0)
Mais l'inconvénient c'est que il faut un fichier, donc tu ne peut pas le changer en temps réel...
Enfin voilà je t'ai laissé le peu que je connaisse.
Si tu veux faire du temps réel, tu peut peut-etre essayer de dessiner directement dans la fenêtre du bureau, mais la tu aura besoin des apis sur les images, dessin et tout... (y'en a beaucoup) et il te faudra le hdc (handle spécial pour dessiner) du bureau. Donc tu devra retrouver le hdc à partir du handle du bureau (que tu peut récupérer avec la 1ère api)
Voilà ça fait beaucoup de parlote, bon appetit
@ +
MadMatt