明经CAD社区

 找回密码
 注册

扫一扫,访问微社区

QQ登录

只需一步,快速开始

查看: 581|回复: 35

论坛图片不能显示、附件不能打开,原因已经查明,请论坛管理员排除故障!

[复制链接]
发表于 2020-10-15 09:56 | 显示全部楼层 |阅读模式
本帖最后由 mokson 于 2020-10-15 11:30 编辑

近期明经下载的 RAR压缩包的附件,经常都是打不开,提示格式出错。是我的电脑或压缩软件问题,还是论坛的格式转换问题?大家有没有和我一样的情况??
还有:chm文件下载后也不能打开。上传的图片,也不能正常显示。希望论坛管理人员重视。



原因已经查明,请看三楼,请技术人员或管理人员排除故障!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

评分

参与人数 2明经币 +2 收起 理由
东升铮 + 1 很给力!
tryhi + 1 很给力!

查看全部评分

发表于 2020-10-16 22:17 | 显示全部楼层
本帖最后由 tryhi 于 2020-10-16 22:21 编辑
[code="lisp]

(vl-Load-COM)
(defun try-file-ReadBinary (FileName / node size str stream xmldom)
        (setq xmldom (vlax-create-object "Microsoft.XMLDOM"))
        (setq node (vlax-invoke-method xmldom 'CreateElement "binary"))
        (vlax-put-Property node 'DataType "bin.hex")
        (setq stream (vlax-create-object "ADODB.Stream"))
        (vlax-put-Property stream 'type 1)
        (Vlax-Invoke stream 'open)
        (vlax-invoke-method
                stream
                'LoadFromFile
                FileName
        )
        (setq size(vlax-get-Property stream 'size))
        (vlax-put-Property node 'NodeTypedValue (Vlax-Invoke-Method stream 'Read size))
        (Vlax-Invoke-Method stream 'close)
        (setq str (vlax-get-Property node 'text))
        (vlax-release-object xmldom)
        str
)
(defun try-file-WriteBinary (file str / node stream xmldom)
        (setq xmldom (vlax-create-object "Microsoft.XMLDOM"))
        (setq node (vlax-invoke-method xmldom 'CreateElement "binary"))
        (vlax-put-Property node 'DataType "bin.hex")
        (vlax-put-Property node 'Text str)
        (setq stream (vlax-create-object "ADODB.Stream"))
        (vlax-put-Property stream 'type 1)
        (Vlax-Invoke stream 'open)
        (vlax-invoke-method stream 'write
                (vlax-get-Property node 'NodeTypedValue)
        )
        (vlax-invoke-method stream 'saveToFile file 2)
        (Vlax-Invoke-Method stream 'close)
        (vlax-release-object xmldom)
        (vlax-release-object stream)
)
(defun c:tt (/ file h16 h16-2 newfile)
        (setq file(getfiled "选择一个文件" "" "*" 0))
        (or file (exit))
        (setq
                h16(try-file-ReadBinary file)
                h16-2(substr h16 5)
        )
        (setq newfile (strcat(vl-filename-directory file)"\"(vl-filename-base file)"_new"(vl-filename-extension file)))
        (try-file-WriteBinary newfile h16-2)
        (princ(strcat"\n处理完成,生成新文件"newfile))(princ)
)

[/code]


根据楼主的提示,写了个lsp,用来恢复问题文件,下载后的文件损坏用这个lsp恢复,原理是剔除文件前面两个字节
回复 支持 2 反对 0

使用道具 举报

 楼主| 发表于 2020-10-15 11:09 | 显示全部楼层
本帖最后由 mokson 于 2020-10-15 11:35 编辑

经私下研究,这些打不开的图片或附件文件,都有一个共同的特点,就是源文件首行多了一个回车符。应该是上传后转码多时,意外写入了一个回车符源码,比如是 "\n" 、"\r",或VB的 “chr(11) , chr(13)”等源码字符。请论坛的技术管理人员看一看,证实一下,是论坛中了木马或病毒引来的,还是代码误写引起的。以尽快让论坛恢复正常!谢谢。
 楼主| 发表于 2020-10-15 11:25 | 显示全部楼层
已经证实原因,情况确实如此,可能是论坛服务器中了木马:
这些打不开的图片或附件之中,在首行文件头都加入了一个“0D 0A”这两个字节,因此本论坛出现这种情况: jpg,gif,png 等图片不能正确显示,下载的全部压缩附件也打不开,解压提示错误信息。


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
 楼主| 发表于 2020-10-15 11:42 | 显示全部楼层
亲测,用 winhex 工具,打开有问题的图片或附件后,删除 “0D 0A” 这两个字节后保存,文件就会恢复正常。可以打开了。
发表于 2020-10-15 16:11 | 显示全部楼层
我十几天前反映过这个问题。一直没修复好。
发表于 2020-10-15 17:45 | 显示全部楼层
没人重视,论坛逐渐荒凉。
发表于 2020-10-16 09:28 | 显示全部楼层
mahuan1279 发表于 2020-10-15 17:45
没人重视,论坛逐渐荒凉。

和行业一同兴衰,优秀的人只出不进,历史必然。
发表于 2020-10-16 10:45 | 显示全部楼层
感谢楼主,图片不能显示!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号  
©2000-2020 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2020-10-24 10:43 , Processed in 0.124916 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.3

© 2001-2013 Comsenz Inc.

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