找回密码
 加入
搜索
查看: 2405|回复: 6

[AU3基础] 如何判断图片是否缩略图预览成功?

  [复制链接]
发表于 2011-11-19 10:24:22 | 显示全部楼层 |阅读模式
如题所示。最近小弟中了一病毒。导致很多jpg文件都寻坏了。因为路径太多。无法一一找出删除。我知道坏的文件无法预览jpg。请问如何快速查找到坏的文件并删除呢?
发表于 2011-11-19 10:40:56 | 显示全部楼层
在十六进制下对比下好的和坏的图片  看看损坏的图片文件头是否被破坏  破坏的话  只需查找与jpg不匹配的文件头的文件就行
发表于 2011-11-19 16:42:39 | 显示全部楼层
尝试调用_GDIPlus_ImageLoadFromFile,加载失败则说明图片已经损坏。
发表于 2011-11-19 18:52:06 | 显示全部楼层
本帖最后由 afan 于 2011-11-19 18:54 编辑

正常图片文件不一定有缩略图数据。
有缩略图数据的图片文件也不一定没损坏。

所以不能以缩略图作为文件是否已损坏的识别条件。不知道文件损坏的特征是什么,如果知道了特征就可以很快判断,甚至可以修复。
2#的方法及P版的方法都可以试试~
发表于 2011-11-20 00:17:35 | 显示全部楼层
回复 1# laojikelly

如果仅仅是针对jpg,那么图片以16进制读取的开头一定是ffd8、尾部必定是ffd9
损坏的图片一般都是丢失掉后面部分,所以判断结尾即可
If StringRight(FileRead(FileOpen('1.jpg',16)),4) ='ffd9' Then
MsgBox(0,0,'正常')
Else
MsgBox(0,0,'损坏')
EndIf
另外,这样的方法即使读取几M的图片也是秒杀判断出来,但注意别用msgbox显示读取的数据哦
 楼主| 发表于 2011-11-21 09:20:12 | 显示全部楼层
谢谢各位的热心答复。因前两日没机会上网。所以现在才看到大家的热心回答。实在感谢。
发表于 2011-11-25 17:59:34 | 显示全部楼层
这个真不知道,收藏了
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-9-20 22:47 , Processed in 0.087853 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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