bonjour,
j'ai créé un prog qui fait des captures d'ecran, ca marche bien dans l'ensemble mais il reste quelques problemes :
1- le curseur de la souris n'est jamais capturé
2- quand je lis une video avec media player classic, ça me met la video en noir
3- certaines "infos bulle" ne sont pas capturés (cf l'image de word : la partie que j'ai mis en rouge n'est pas capturé)
j'utilise la librarie "gdi32.dll", existe-il d'autres librairies qui peuvent resoudre mes problemes ?
ou est ce qu'il y a des erreurs dans mon code ?
voici mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 public Bitmap CaptureScreen() { int hSDC, hMDC; int hBMP, hBMPOld; int r; hSDC = CreateDC("DISPLAY", "", "", ""); hMDC = CreateCompatibleDC(hSDC); FW = GetDeviceCaps(hSDC, 8); FH = GetDeviceCaps(hSDC, 10); hBMP = CreateCompatibleBitmap(hSDC, FW, FH); hBMPOld = SelectObject(hMDC, hBMP); r = BitBlt(hMDC, 0, 0, FW, FH, hSDC, 0, 0, 13369376); hBMP = SelectObject(hMDC, hBMPOld); r = DeleteDC(hSDC); r = DeleteDC(hMDC); oBackground = Image.FromHbitmap(new IntPtr(hBMP)); DeleteObject(hBMP); return oBackground; }
Partager