Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
    Enum
JpMode
          theScreen = 0 '全屏截图
          theForm = 1
'当前焦点窗口截图
    End Enum
    Private Declare Function GetClipboardData Lib
"user32" (ByVal wFormat As Long) As Long
    Private Declare Function
CloseClipboard Lib "user32" () As Long
    Private Declare Function
OpenClipboard Lib "user32" (ByVal hwnd As Long) As Long
    Private Declare
Function OleCreatePictureIndirect Lib "olepro32.dll" (PicDesc As PicBmp, RefIID
As Guid, ByVal fPictureOwnsHandle As Long, IPic As IPicture) As Long
   
Private Const CF_BITMAP = 2
    Private Type PicBmp
        Size As
Long
        Type As Long
        hBmp As Long
        hPal As
Long
        Reserved As Long
    End Type
    Private Type
Guid
        Data1 As Long
        Data2 As Integer
        Data3 As
Integer
        Data4(0 To 7) As Byte
    End Type
   
    Function
ApiGetClipBmp() As IPicture
        On Error Resume Next
   
       
Dim Pic As PicBmp, IID_IDispatch As Guid
        OpenClipboard 0
'OpenClipboard
        With IID_IDispatch
            .Data1 =
&H20400
            .Data4(0) = &HC0
            .Data4(7) =
&H46
        End With
        With Pic
            .Size =
Len(Pic)
            .Type = 1
            .hBmp =
GetClipboardData(CF_BITMAP)
        End With
       
       
OleCreatePictureIndirect Pic, IID_IDispatch, 1, ApiGetClipBmp
       
'stdole.SavePicture ApiGetClipBmp, "c:\clipboard.bmp"
       
CloseClipboard
    End Function
   
    Function KeyJp(Optional ByVal
TheMode As JpMode = theScreen) As IPictureDisp
      
'版权所有,请保留作者信息.QQ:1085992075   '如需商业用途请联系作者
          Call
keybd_event(vbKeySnapshot, TheMode, 0, 0) '
          DoEvents
         
'Set KeyJp = Clipboard.GetData
    End Function

Sub dd()
      KeyJp (theScreen)
      SavePicture ApiGetClipBmp,
"c:\2.bmp"
    End Sub

最新文章

  1. winform下的简易播放器
  2. mkforsela
  3. Ninject之旅之七:Ninject依赖注入
  4. json与jsonp小结
  5. 深入理解Message, MessageQueue, Handler和Looper
  6. Gym 100637F F. The Pool for Lucky Ones
  7. Linux下如何使CP命令不提示覆盖
  8. foreach的参数不是数组:Warning: Invalid argument supplied for foreach
  9. 有关html,css,js,less的使用规范
  10. Gym 100952 D. Time to go back(杨辉三角形)
  11. iOS 用RunTime来提升按钮的体验
  12. [OC] 富文本 AttributedString 以及 用富文本解析html文本
  13. SQL Server 主键及自增长列的修改
  14. 吴恩达机器学习笔记6-梯度下降II(Gradient descent intuition)--梯度下降的直观理解
  15. Flask里面session的基本操作
  16. HDU contest808 ACM多校第7场 Problem - 1008: Traffic Network in Numazu
  17. activeMq-1 快速入门
  18. CPP全面总结(涵盖C++11标准)
  19. WPF经典编程模式-MVVM示例讲解
  20. STP实验(指定特定交换机为根桥)

热门文章

  1. hrbust 1621 迷宫问题II 广搜
  2. <NET CLR via c# 第4版>笔记 第10章 属性
  3. 『转』Bitdefender Internet Security 2013 – 免费1年
  4. myeclipse单步调试
  5. (转)RESTful API 设计最佳实践
  6. 项目中一个Jenkins权限配置的过程
  7. Linux运维学习笔记-网络安全等级保护
  8. 新转移注意(caffe):ImportError: libcudart.so.7.0: cannot open shared object file: No such file or directory
  9. windows 不能在本地计算机启动SqlServer. 参考特定服务错误代码10048
  10. noi.ac上的一套(假)NOI题