.net写的抓屏函数

写的很完善的屏幕抓图函数,可以直接使用。

    '''


    ''' 屏幕截图
    '''

    ''' 截图的目标对象句柄(不正确的句柄表示截取全屏)
    '''
    '''
    Public Function SnapScreen(ByVal handle As Integer) As System.Drawing.Image
        Dim grc As System.Drawing.Graphics = Nothing

        Try
            Dim rect As System.Drawing.Rectangle
            Dim control As System.Windows.Forms.Control = System.Windows.Forms.Control.FromHandle(New System.IntPtr(handle))

            If control Is Nothing Then
                rect = Screen.PrimaryScreen.WorkingArea
            Else
                rect = New System.Drawing.Rectangle(control.Location, control.Size)
            End If

            Dim bmp As New System.Drawing.Bitmap(rect.Size.Width, rect.Size.Height)
            grc = System.Drawing.Graphics.FromImage(bmp)
            grc.CopyFromScreen(rect.X, rect.Y, 0, 0, rect.Size)

            Return bmp
        Catch ex As Exception
            Throw ex
        Finally
            If grc IsNot Nothing Then
                grc.Dispose()
            End If
        End Try
    End Function

 

你可能感兴趣的:(.net,exception,function,integer)