COPIER LE BUREAU DANS UN FORMULAIRE

B0mbJacK
Messages postés
141
Date d'inscription
lundi 23 février 2004
Statut
Membre
Dernière intervention
25 octobre 2006
- 22 oct. 2006 à 05:30
Renfield
Messages postés
17287
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
- 8 mars 2007 à 22:00
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/77-copier-le-bureau-dans-un-formulaire

Renfield
Messages postés
17287
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
71
8 mars 2007 à 22:00
déclaration d'API pas ok, et Screen.Width utilisée avec BitBlt (twips :S)


allez :

Private Declare Function BitBlt Lib "gdi32.dll" (ByVal hDestDC As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As Long
Private Declare Function GetDesktopWindow Lib "user32" () As Long

Private Declare Function GetDC Lib "user32" (ByVal hwnd As Long) As Long
Private Declare Function ReleaseDC Lib "user32.dll" (ByVal hwnd As Long, ByVal hdc As Long) As Long


Private Sub Form_Load()
Dim BureauhWnd As Long
Dim BureauDC As Long

Me.AutoRedraw = True

BureauhWnd = GetDesktopWindow()
BureauDC = GetDC(BureauhWnd)
BitBlt Form1.hdc, 0&, 0&, Screen.Width \ Screen.TwipsPerPixelX, Screen.Height \ Screen.TwipsPerPixelY, BureauDC, 0&, 0&, vbSrcCopy
ReleaseDC BureauhWnd, BureauDC
End Sub


++
Renfield
Messages postés
17287
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
71
8 mars 2007 à 21:37
Fuite :

GetDC doit etre balancé par un ReleaseDC
B0mbJacK
Messages postés
141
Date d'inscription
lundi 23 février 2004
Statut
Membre
Dernière intervention
25 octobre 2006

22 oct. 2006 à 05:30
salut Nix,
tout d'abord merci pour ta source, j'arrive un peu trop tard
7 ans apres lol : )
j'aurais une petite question concernant le bureau
est-ce que c'est possible de mettre le bureau dans une form?

bonne programmation ( en esperant que tu trouveras le temps de me répondre)