Foxtable(狐表)用户栏目专家坐堂 → 打开一个文件 ,并且获得指定区域的截图


  共有2494人关注过本帖树形打印复制链接

主题:打开一个文件 ,并且获得指定区域的截图

帅哥哟,离线,有人找我吗?
lianghanyu
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:267 积分:2373 威望:0 精华:0 注册:2020/6/28 8:43:00
打开一个文件 ,并且获得指定区域的截图  发帖心情 Post By:2023/7/29 9:31:00 [显示全部帖子]

Dim Proc As New Process '定义一个新的Process
Proc.File = "I:\2.eml" '指定要打开的文件
Proc.Start()
Dim d As Date = Date.now

Do While d.AddSeconds(5) > Date.Now
    Application.Doevents
Loop

ClipBoard.Clear
Sendkeys.Send("^{PRTSC}")
Application.Doevents
If ClipBoard.ContainsImage Then
    Dim img As Image
    img = ClipBoard.GetImage
    img.save("D:\20230729.jpg")
End If
Proc.Close()


问题1:上边的是全屏截图,有没有办法指定截图区域?

问题2: 为什么最后一句 Proc.Close()  没有生效?  因为如果功能实现,我是要做成一个获取邮件内容的代码的。在某一个指定文件夹里,有很多已经导出来的邮件,我想一个一个的打开,然后使用截图功能,把邮件里的内容截图形式保存下来。


 回到顶部
帅哥哟,离线,有人找我吗?
lianghanyu
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:267 积分:2373 威望:0 精华:0 注册:2020/6/28 8:43:00
  发帖心情 Post By:2023/7/29 10:11:00 [显示全部帖子]

试了一下这个代码,能打开文件,并且截图 ,但是关闭不了:

Dim Proc As New Process '定义一个新的Process
Proc.File = "D:\出错损失表.xlsx" '指定要打开的文件
Proc.Start()
Dim d As Date = Date.now

Do While d.AddSeconds(5) > Date.Now
    Application.Doevents
Loop

ClipBoard.Clear
Sendkeys.Send("^{PRTSC}")
Application.Doevents
If ClipBoard.ContainsImage Then
    Dim img As Image
    img = ClipBoard.GetImage
    img.save("D:\20230729.jpg")
End If
ShowAppWindow("出错损失表.xlsx", 5)


 回到顶部
帅哥哟,离线,有人找我吗?
lianghanyu
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:童狐 帖子:267 积分:2373 威望:0 精华:0 注册:2020/6/28 8:43:00
  发帖心情 Post By:2023/7/29 10:22:00 [显示全部帖子]

找到原因了,标题不能带文件扩展名。

 回到顶部