Quiero capturar la imagen de la pantalla como si presionara la tecla "ImpPant" pero a diferencia de esta me capture la imagen de video ya sea de reproductor de windows, de algun video de youtube o camara web y no me muestre un cuadro negro.
He probado varios ejemplos y links que me han dado pero no he podido hacerlo, haber si alguien puede ayudarme, saludos
Hola, proba esto..
Option Explicit
Private Declare Function PrintWindow Lib "user32.dll" (ByVal hWnd As Long, ByVal hdcBlt As Long, ByVal nFlags As Long) As Long
Const PW_CLIENTONLY = &H1
Private Sub Timer1_Timer()
PrintWindow &H40176, Me.hDC, 0
End Sub
lo probe con un video de youtube y anda...ponele el handle del reproductor de youtube para probar o la ventana del navegador.
saludos.
Perdona la ignorancia pero no se como aplicar el ejemplo :huh:
Como hago para ver la captura que se hizo, podria utilizar un control picture o pegar la captura en paint para ver el resultado?
Option Explicit
Private Declare Function GetForegroundWindow Lib "user32" () As Long
Private Declare Function PrintWindow Lib "user32.dll" (ByVal hwnd As Long, ByVal hdcBlt As Long, ByVal nFlags As Long) As Long
Const PW_CLIENTONLY = &H1
Private Sub Timer1_Timer()
Dim Ret As Long
Ret = GetForegroundWindow()
Me.AutoRedraw = True
If (PrintWindow(Ret, Me.hDC, 0) = True) Then
Me.Refresh
Debug.Print "Print Realizada"
Me.SetFocus
Else
Debug.Print "Error"
End If
Timer1.Enabled = False
End Sub
No tiene caso hacer un Timer1.Enabled = False
Option Explicit
Private Declare Function GetForegroundWindow Lib "user32" () As Long
Private Declare Function PrintWindow Lib "user32.dll" (ByVal hwnd As Long, ByVal hdcBlt As Long, ByVal nFlags As Long) As Long
Private Sub Timer1_Timer()
If PrintWindow(GetForegroundWindow , Me.hDC, 0) Then
Me.Refresh
Debug.Print "Print Realizada"
Else
Debug.Print "Error"
End If
End Sub
Efectivamente me captura solo la imagen de los videos de youtube, del reproductor windows u otro sale todo negro y de la camara web no lo pude probar.
Parece que no especifique bien lo que intento hacer con su ayuda.
Quiero hacer una captura de toda la pantalla por ejemplo 1024x768 al igual que lo hace la tecla ImpPant la cual no toma los videos y muestra todo negro, algo asi como los keylogger que toman una foto de la pantalla para espiar al usuario.
en XP si, en WinVista o W7 si se ve el video envez de la pantalla negra esa, = creo que habia un ejemplo de como hacerlo, pero ahora no me acuerdo dondeestaba, lo busco y despues lo posteo si lo encuentro.
Cita de: hunter18 en 4 Agosto 2010, 02:50 AM
Efectivamente me captura solo la imagen de los videos de youtube, del reproductor windows u otro sale todo negro y de la camara web no lo pude probar.
Parece que no especifique bien lo que intento hacer con su ayuda.
Quiero hacer una captura de toda la pantalla por ejemplo 1024x768 al igual que lo hace la tecla ImpPant la cual no toma los videos y muestra todo negro, algo asi como los keylogger que toman una foto de la pantalla para espiar al usuario.
hasta donde yo se no se puede, se que es un color RGB(16, 0, 16) y que el reproductor pinta (no se de que forma) un area determinada de la pantalla que contenga esos colores.
Saludos.
bueno si no se puede que se va hacer, saludos