找回密码
 立即注册
搜索
查看: 2770|回复: 5

去除chm电子书背景音乐一法

[复制链接]
发表于 2008-2-19 19:03 | 显示全部楼层 |阅读模式
新来S1,多多关照!!
相信各位可能都用过chm格式的电子书
有的电子书作者喜欢添加一些自己喜欢的背景音乐,但是在读者看来这背景音乐可能就有些烦人了
今天就介绍一个去除chm电子书背景音乐的方法
废话不多说,直接操刀就干吧

所用工具:只需要一个十六进制编辑器就行了
Winhex,Uedit32,C32ASM这些都行
由于我比较习惯用C32,所以就以它为例了(其实都一样的)

首先我们打开要看的CHM电子书,背景音乐弹出来了吧。。。
在文字部分右键----查看源文件----进入网页代码的海洋了。。。
这些如果看不懂也没关系,我们唯一要知道的是背景音乐是用bgsound一句来实现的
那我们就要来寻找这个bgsound啦,我们可以用CTRL+F查找----查找内容填bgsound,记得区分大小写的勾勾不要选哦
点查找后轻松找到,我这里它是这样写的<BgSOUND SRC="1/AA.mid" loop="-1"> (你那里mid的文件名肯定不一样哦)
那就是调用了1/AA.mid来播放嘛(Hint:搜索的时候也可以搜mid哦!)

现在我们来修改,用C32载入CHM文件,选十六进制模式(Winhex可以直接进)
同样是用CTRL+F查找,这次我们找mid,同样不要勾大小写敏感
这样很容易就找到了AA.mid,简单分析下

41   41  2E  6D  69  64
A    A    .     m    i     d

A的ASCII码值十进制为65,转换成十六进制为41
同理符号"."转化为十六进制为2E
那么AA.mid转换后就是41 41 2E 6D 69 64
这里我们只要把2E填充为00就可以了,这样CHM就找不到这个mid播放文件了
这样就达到了我们去除背景音乐的效果,修改后如下

41   41  00  6D  69  64
A    A    .     m    i    d

好,现在修改完毕,重新试试,背景音乐果然没了,而且启动速度也变快了
另外如果在进入别的页面时也出现背景音乐,可以用同样的方法去除
我曾经碰到过一个作者所有页面都插不同的背景音乐,呵呵!

补充一下,填充的时候大家也可以试试用其他的方式
好了,就介绍到这里,有什么不对的地方欢迎大家指出!!
初来s1,请多指教啦!!
回复

使用道具 举报

发表于 2008-2-19 20:02 | 显示全部楼层
:awkward: 把喇叭关掉更快的。
回复

使用道具 举报

发表于 2008-2-20 01:13 | 显示全部楼层
给2楼再补充2条
1、反编译chm
2、关掉ie设置里面的播放音乐
回复

使用道具 举报

     
发表于 2008-2-20 12:30 | 显示全部楼层
按一下ESC不就行了么
回复

使用道具 举报

 楼主| 发表于 2008-2-20 13:39 | 显示全部楼层
刚试了下我这里几本书按ESC没用喔
回复

使用道具 举报

发表于 2008-2-20 15:25 | 显示全部楼层
顺便说一句,现在反编译chm更方便了,用7-Zip就可以直接打开。
当然也可以用windows自带的hh.exe来做
hh.exe  -decompile  <输出路径>   <目标chm文件>
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|上海互联网违法和不良信息举报中心|网上有害信息举报专区|962110 反电信诈骗|举报电话 021-62035905|Stage1st ( 沪ICP备13020230号-1|沪公网安备 31010702007642号 )

GMT+8, 2025-7-19 03:40 , Processed in 0.103632 second(s), 7 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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