| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 11290 人关注过本帖
标题:[原创]RM文件分析器
只看楼主 加入收藏
yeye55
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:66
专家分:152
注 册:2007-1-19
收藏
得分:0 
汗!好象没有这个块,如果修改了CONT块(其它位于头部的块也一样)的内容,要重写整个文件,要重新写入数据包,并重新生成索引表,因为修改块的内容会改变块的长度,这会影响到其后数据包的位置,所以要重写整个文件,除非修改的部份和原来的内容长度一致,才可以避免这种情况。

我的百度空间→http://hi.baidu.com/yeye55
2007-05-03 20:05
kingstarer
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2007-4-12
收藏
得分:0 

哦,是修改CONT块,谢谢!

具体是哪一些呢,LZ能说一下吗?

我用你的程序修改信息后发现修改了很多地方,如PROP里面的DataOffset等

2007-05-03 21:07
yeye55
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:66
专家分:152
注 册:2007-1-19
收藏
得分:0 

修改时建议先将整个块读入到内存中,然后进行修改,最后新建一个文件,将修改好的块和原文件中的其它数据复制到新文件中。

比如说:CONT块中的author成员,假设原内容是'abcd',现在修改为'abcd1234',这时要修改author_len成员,因为author的长度改变了,接着修改CONT块的size成员。由于CONT块的长度改变了,紧跟的DATA块、数据包、INDX块的位置也改变了,所以PROP块的data_offset成员、index_offset成员;INDX块的next_index_header成员;所有索引记录的offset成员都要进行修改。然后按照原文件中块的顺序写入到新文件中。


我的百度空间→http://hi.baidu.com/yeye55
2007-05-03 23:19
sword1
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2007-5-4
收藏
得分:0 
不错,谢谢:)
2007-05-04 15:32
kingstarer
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2007-4-12
收藏
得分:0 
LZ你好

我照着你说的去改后终于能播放了,但又出现了新问题

改动之后的文件不能拖动播放,是不是还要改什么啊?

我改了PROP块的data_offset成员、index_offset成员;INDX块的next_index_header成员;
还有CONT块里面的相关内容
2007-05-04 20:33
kingstarer
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2007-4-12
收藏
得分:0 
我用你的分析器打开了由你分析器修改的和由我的程序修改之后的文件,对比看了很多地方都没发现不同,但你的程序修改之后的文件能拖动播放,我的却不能(原文件是能拖动的)
2007-05-04 20:45
yeye55
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:66
专家分:152
注 册:2007-1-19
收藏
得分:0 
索引记录的offset成员也要进行修改。

我的百度空间→http://hi.baidu.com/yeye55
2007-05-05 13:47
kingstarer
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2007-4-12
收藏
得分:0 

哦,谢谢LZ了,终于成功了

2007-05-05 20:48
kingstarer
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2007-4-12
收藏
得分:0 

不过我在修改过程中发现文件中的某些的参数并不正确,但是确可以正常播放

不知道哪些参数是关键参数,少了就无法播放??

2007-05-05 20:50
yeye55
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:66
专家分:152
注 册:2007-1-19
收藏
得分:0 
哦!这个我可没有研究过,不过RealPlayer的容错能力相当不错。

我的百度空间→http://hi.baidu.com/yeye55
2007-05-05 22:00
快速回复:[原创]RM文件分析器
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018554 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved