中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 转:不用API实现截屏/截取当前窗口内容(“抓图”)
作者:
标题: 转:不用API实现截屏/截取当前窗口内容(“抓图”) 上一主题 | 下一主题
eech
高级用户




积分 906
发帖 346
注册 2006-7-10
状态 离线
『楼 主』:  转:不用API实现截屏/截取当前窗口内容(“抓图”) 使用 LLM 解释/回答一下

不用API实现截屏/截取当前窗口内容(“抓图”)


-------
以前我在google里找过实现截屏/截Window的方法,搜到了一个用API函数的,我不喜欢用API,于是就没收藏。今天我无意中发现 System.Windows.Forms.SendKey 对象,一下子就知道该怎么弄了

// 模拟按键,将当前窗口图像截取到剪贴板:
SendKeys.SendWait("%{PRTSC}"); // 模拟 Alt+PrtSc,如果要截取整个屏幕,把 Alt (%) 去掉
// 获取剪贴板里的图像:
Bitmap myCapture = (Bitmap)Clipboard.GetDataObject().GetData(DataFormats.Bitmap);
// 要显示图像可以这么做:
this.pictureBox1.Image = myCapture;
// 要保存图像可以这么做:
myCapture.Save(@"C:\myCapture.jpg", System.Drawing.Imaging.ImageFormat.Jpeg);

-------
不知道有没有人发过,搜索不管用……


2007-6-15 10:12
查看资料  发短消息  网志   编辑帖子  回复  引用回复
my3439955
中级用户




积分 272
发帖 99
注册 2006-6-2
状态 离线
『第 2 楼』:   使用 LLM 解释/回答一下

这是C#写的程序吧

说不用API是因为API被封装了

API可以截取屏幕和当前窗口

在XP下,还可以方便的截取任意窗口的内容

无论是否被遮挡




X5O!P%@AP
2007-6-16 09:15
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
bd123456789
中级用户





积分 360
发帖 216
注册 2007-5-29
状态 离线
『第 3 楼』:   使用 LLM 解释/回答一下

可能楼主的代码是调用
System.Windows.Forms.SendKey 对象
然后用VBS对该对象的属性进行操作 可惜本人没有领会!

如果是C编写的,有高手能编个EXE吗?方便在CMD或VBS中调用


2008-5-16 07:54
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: