我写过一个定时自动截取屏幕并保存为JPEG图片的小软件,把源码贴出来,希望对你有所帮助:Private Declare Function GetDC Lib "user32" (ByVal hwnd As Long) As Long Private Declare Function BitBlt Lib "gdi32" (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 LongPrivate Sub Form_Load() Me.Hide Me.AutoRedraw = True Dim i i = 0 End SubPrivate Sub Timer1_Timer() BitBlt Me.hDC, 0, 0, Screen.Width, Screen.Height, GetDC(0), 0, 0, vbSrcCopy '抓屏 Dim sFile As String sFile = App.Path & "\" & Format(Now, "yyyymmddhhmmss") & ".jpg" SavePicture Me.Image, sFile '保存 End Sub
Private Declare Function BitBlt Lib "gdi32" (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 LongPrivate Sub Form_Load()
Me.Hide
Me.AutoRedraw = True
Dim i
i = 0
End SubPrivate Sub Timer1_Timer()
BitBlt Me.hDC, 0, 0, Screen.Width, Screen.Height, GetDC(0), 0, 0, vbSrcCopy '抓屏
Dim sFile As String
sFile = App.Path & "\" & Format(Now, "yyyymmddhhmmss") & ".jpg"
SavePicture Me.Image, sFile '保存
End Sub
i = 0
在这里是多余的,你可以去掉