A lo que vamos, estoy intentando hacer un programa con el vbasic que te capture una imagen de pantalla cada unos segundos (3 por ejemplo) y la va guardando con distinto nombres.. Y bueno mi problema es que las capura en .bmp por que no se hacer para que las guarde en .jpg para que pesen menos y otra duda ya que estamos es para que la imagen la guarde en el mismo directorio que va el .EXE ya que asi la estoy guardando en C:
sin mas os dejo el codigo COMPLETO. a ver si me ayudais por favor.
Código:
Option Explicit
Dim i As Long
'Genero el evento de la tecla aqui
''''''''''''''''''''''''''''''''''''''''…
Private Declare Sub keybd_event _
Lib "user32" ( _
ByVal bVk As Byte, _
ByVal bScan As Byte, _
ByVal dwFlags As Long, _
ByVal dwExtraInfo As Long)
'recibe la ruta donde crear el BMP
''''''''''''''''''''''''''''''''''''''''…
Private Sub Capturar_Guardar(Path As String)
' borra el portapapeles
Clipboard.Clear
' Manda la pulsación de teclas para capturar la imagen de la pantalla
Call keybd_event(44, 2, 0, 0)
DoEvents
' Si el formato del clipboard es un bitmap
If Clipboard.GetFormat(vbCFBitmap) Then
'Guardamos la imagen en disco
SavePicture Clipboard.GetData(vbCFBitmap), Path
Else
DoEvents
''MsgBox " Error ", vbCritical
End If
End Sub
Private Sub Form_Activate()
Me.Visible = False
i = 0 'iniciamos contador de número de pantallazos
Dim Inicio, TiempoPausa
Do While (i < 100)
Call Capturar_Guardar("c:\foto" & CStr(i) & ".bmp")
TiempoPausa = 3 ' Asigna hora de inicio.
Inicio = Timer ' Establece la hora de inicio.
Do While Timer < Inicio + TiempoPausa
''DoEvents ' Cambia a otros procesos.
Loop
i = i + 1
Loop
End Sub
gracias de antemano a todos y saludos