vba截屏保存
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
vba截屏保存的更多相关文章
- android截屏:保存一个view的内容为图片并存放到SD卡
项目中偶尔会用到截屏分享,于是就有了下面这个截屏的方法~ 下面得saveImage()方法就是保存当前Activity对应的屏幕所有内容的截屏保存. private void saveImage() ...
- iOS截屏保存至相册
#pragma mark 截屏并保存至相册 -(void)screenShotsComplete:(void(^)(UIImage * img)) complete { CGSize imageSiz ...
- Unity3d 截屏保存到相册,并且刷新相册
要做一个截图的功能,并且玩家可以在相册中看到. 做的时候遇到了三个问题: 1.unity自带的截图API,Application.CaptureScreenshot在Android上不生效 2.图片保 ...
- IOS 截屏(保存到相册中)
@interface NJViewController () /** * 点击截屏按钮 */ - (IBAction)captureView:(UIButton *)sender; /** * 白色v ...
- JS实现网页选取截屏 保存+打印 功能(转)
源码地址: 1.1 确定截图选取范围 用户在开始截图后,需要在页面上选取一个截图范围,并且可以直观的看到,类似如下效果: image 我们的选取范围就是鼠标开始按下的那个点到鼠标拖动然后松开的那个点之 ...
- 使用adb命令对手机进行截屏保存到电脑,SDCard
adb shell /system/bin/screencap -p /sdcard/screenshot.png(保存到SDCard) adb pull /sdcard/screenshot.png ...
- C#截屏
本实例代码实现了WinForm截屏保存为图片,亲测可行. 界面截图: 下载:http://hovertree.com/h/bjaf/scjyuanma.htm 以下代码可以实际运行,在项目HoverT ...
- iOS开发UI篇—Quartz2D使用(截屏)
iOS开发UI篇—Quartz2D使用(截屏) 一.简单说明 在程序开发中,有时候需要截取屏幕上的某一块内容,比如捕鱼达人游戏.如图: 完成截屏功能的核心代码:- (void)renderInCont ...
- 【iOS】Quartz2D截屏
一.简单说明 在程序开发中,有时候需要截取屏幕上的某一块内容,比如捕鱼达人游戏.如图: 完成截屏功能的核心代码:- (void)renderInContext:(CGContextRef)ctx;调用 ...
随机推荐
- Vue跨路由触发事件,Vue监听sessionStorage
近来,在做公司的聊天系统,引用的是极光的api.项目需求实时监听别人发过来的消息,进行渲染到页面,还有历史记录也要渲染,历史记录和实时聊天记录返回的结构体还不一样,看到需求的我欲哭无泪,首先登录是在首 ...
- OAF 返回供应商门户主页
if (pageContext.getParameter("returnHomePage") != null) { pageContext.setForceForwardURL(& ...
- poj 2029 Get Many Persimmon Trees 各种解法都有,其实就是瞎搞不算吧是dp
连接:http://poj.org/problem?id=2029 题意:给你一个map,然后在上面种树,问你h*w的矩形上最多有几棵树~这题直接搜就可以.不能算是DP 用树状数组也可作. #incl ...
- java.lang.AbstractMethodError: org.mybatis.spring.transaction.SpringManagedTransaction.getTimeout
java.lang.AbstractMethodError: org.mybatis.spring.transaction.SpringManagedTransaction.getTimeout()L ...
- 解析xml(当节点中有多个子节点)
概要:解析一个xml,当一个节点中又包含多个子节点如何解析,对比一个节点中不包括其他节点的情况. 一,xml样例 <cisReports batNo="查询批次号" unit ...
- PostgreSQL锁级别及什么操作获取什么锁
表级锁 大多数的表级锁是由内置的 SQL 命令获得的,但他们也可以通过锁命令来明确获取.可使用的表级锁包括: 访问共享(ACCESS SHARE) - SELECT 命令可在查询中引用的表上获得该锁. ...
- 深入了解 Session 与 Cookie
Java —— 深入了解 Session 与 Cookie Java web 了解Cookie和Session 定义 1.很通俗的来讲,Cookie就是浏览器的缓存,就是用户访问网站时保存在浏 ...
- Jmeter-Transaction Controller(事务控制器)
generate parent sample:生成父样本 include duration of timer and pre-post processors in generated sample:在 ...
- 安装配置adb工具及遇到的问题
一. 下载安装 配置环境 二.遇到的问题 1.Terminal 不是内部或外部命令,也不是可运行程序或批处理文件 https://blog.csdn.net/wuqilianga/article/de ...
- C# 图片生成缩略图
C# 图片生成缩略图方法: /// <summary> /// 生成缩略图 /// </summary> /// <param name="fileName&q ...