中国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实现截屏/截取当前窗口内容(“抓图”)

不用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 楼』:  

这是C#写的程序吧

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

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

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

无论是否被遮挡



X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*
2007-6-16 09:15
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
bd123456789
中级用户





积分 360
发帖 216
注册 2007-5-29
状态 离线
『第 3 楼』:  

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

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

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

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


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



论坛跳转: