找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 31392|回复: 13

[其他] nircmd将指定图片复制到剪贴板如何判断数据载入是否成功且为图像数据?

[复制链接]
发表于 2016-8-31 20:31:39 | 显示全部楼层 |阅读模式
本帖最后由 pcl_test 于 2016-9-1 11:17 编辑
  1. IECapt.exe --url=http://www.bathome.net/ --out=c:\test.png --silent
  2. nircmd  clipboard copyimage "c:\test.png" 
复制代码
用批处理 或 按键精灵 都可以。


如何判断内存数据被载入成功  且  为 图像数据?

求大家 帮助下,写个判断,谢谢。

评分

参与人数 1技术 +1 收起 理由
CrLf + 1 感谢提供第三方工具线索

查看全部评分

发表于 2016-8-31 20:53:11 | 显示全部楼层
  1. @echo off
  2. IECapt.exe --url=http://www.bathome.net/ --out=c:\test.png --silent
  3. nircmd  clipboard copyimage "c:\test.png"  && echo Succeed || echo Failed
  4. set/p=
复制代码
回复 1# 我来了
 楼主| 发表于 2016-8-31 21:37:37 | 显示全部楼层
回复  我来了
happy886rr 发表于 2016-8-31 20:53



谢谢大神,能不能 再帮助修改下,
不显示【成功字样】

下边的测试中
【按键精灵中】:

RunApp "C:\Users\wcc\Desktop\test.cmd"
MessageBox "test"

批处理 未执行完,下边的对话框  就出来了!(这样不达标啊。)

评分

参与人数 1PB -4 收起 理由
pcl_test -4 指定回应某楼层的在相应楼层点回复,少引用

查看全部评分

发表于 2016-9-1 11:09:47 | 显示全部楼层
本帖最后由 pcl_test 于 2016-9-1 11:13 编辑

回复 2# happy886rr

nircmd这句就算图片不存在或是将txt改扩展名为图片,也会显示成功
 楼主| 发表于 2016-9-1 11:27:46 | 显示全部楼层
回复  happy886rr

nircmd这句就算图片不存在或是将txt改扩展名为图片,也会显示成功
pcl_test 发表于 2016-9-1 11:09



麻烦  大神 给改改
发表于 2016-9-1 14:28:38 | 显示全部楼层
本帖最后由 523066680 于 2016-9-1 14:40 编辑

有些语言的库,可以判断剪切板内是否为图片数据。
  1. use Win32::Clipboard;

  2. my $clip = Win32::Clipboard->new();

  3. my $buff = $clip->Get();

  4. if ( Win32::Clipboard->IsBitmap($buff) )
  5. {
  6.     print "is bitmap\n";
  7. }
复制代码
C语言的好像是winuser.h
发表于 2016-9-1 14:30:54 | 显示全部楼层
回复 4# pcl_test
但我测试时,一直显示失败,不过剪切板可以粘贴出图来。非常奇怪。
 楼主| 发表于 2016-9-1 18:18:04 | 显示全部楼层
回复 7# happy886rr

我开始用按键精灵 做出来的  也是可 以的,
但有个问题
因为保存的 图片文件 大小不同
所以 ctrl+V 时,失败的情况很多



后来 修改成 判断文件是否存在的,再用菜单来插入图片的路径,
失败的情况明显下降,但也有 1/10的不成功
 楼主| 发表于 2016-9-1 22:03:59 | 显示全部楼层
Rem 下一个
读第1行 = Lib.文件.读取指定行文本内容("C:\网站链接.txt", 1)
Delay 250
Call Lib.文件.删除指定行文本内容("C:\网站链接.txt", 1)
Delay 250
网站链接 = "D:\IECapt.exe --url=" & 读第1行 & " --out=c:\test.gif --silent"
RunApp 网站链接
RunApp "D:\nircmd.exe clipboard copyimage c:\test.gif"
Delay 2500
RunApp "D:\nircmd.exe clipboard saveimage c:\test.gif"
Rem 等待
IsFile = Plugin.File.IsFileExit("c:\test.gif")
If IsFile = false Then
    Delay 100
    Goto 等待
Else
    Delay 4800
    MoveTo 147, 58
    LeftClick 1
End If
Text = Plugin.File.ReadFileEx("C:\网站链接.txt")
If Text = "" Then
    Call Plugin.Media.Play("J:\5.wav")
Else
    Call Plugin.File.DeleteFile("c:\test.gif")
    Goto 下一个
End If

这个版本的毛病 就比较 大
发表于 2016-9-1 22:37:42 | 显示全部楼层
本帖最后由 happy886rr 于 2016-9-1 22:38 编辑

回复 9# 我来了
你的问题解决没有,为什么会出现复制到剪切板失败,是否可以在复制的时候等待几秒,再操作。
 楼主| 发表于 2016-9-2 08:30:11 | 显示全部楼层
回复 10# happy886rr

试过的,那样的有的是可以的,但网页比较长的就会失败
所以换作了 键盘 点击菜单的,不过偶尔还有少部分不成功。




把【弹框】 改成【写入文件】

mshta http://bathome.net/s/hta "web('https://www.baidu.com/link?url=XXR7bWJ1n0S0rbKpvT6FWixt863bF3sIUEEC4inUGJRPDj2OAiUva4c5vIcULrdE&wd=&eqid=82a228fa00000c1a0000000257c686b3').match(/URL='([^']+)'/)[1]"
这个如何 修改呢?
发表于 2016-9-2 09:10:02 | 显示全部楼层
回复 11# 我来了
  1. mshta http://bathome.net/s/hta "web('https://www.baidu.com/link?url=XXR7bWJ1n0S0rbKpvT6FWixt863bF3sIUEEC4inUGJRPDj2OAiUva4c5vIcULrdE&wd=&eqid=82a228fa00000c1a0000000257c686b3').match(/URL='([^']+)'/)[1]"  >文本.txt
复制代码

评分

参与人数 1技术 +1 收起 理由
我来了 + 1 prefect !

查看全部评分

 楼主| 发表于 2016-9-2 09:23:59 | 显示全部楼层
回复 12# CrLf
又解决了一个人工操作问题



还有4个问题有待进一步解决 就可以脱离人工了。
发表于 2016-9-2 10:53:10 | 显示全部楼层
回复 13# 我来了
加油,我觉得你这几天实现了好多自动化哈,解放劳动力。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 07:30 , Processed in 0.020325 second(s), 9 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表