﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>IT博客网-在浩淼的天空下,留下生活的足迹-文章分类-知识点滴</title><link>http://www.cnitblog.com/flyinggoal/category/4259.html</link><description /><language>zh-cn</language><lastBuildDate>Fri, 30 Nov 2007 15:24:17 GMT</lastBuildDate><pubDate>Fri, 30 Nov 2007 15:24:17 GMT</pubDate><ttl>60</ttl><item><title>文件结构介绍专题（突然对文件结构方面的知识感兴趣了）</title><link>http://www.cnitblog.com/flyinggoal/articles/37105.html</link><dc:creator>风筝</dc:creator><author>风筝</author><pubDate>Fri, 30 Nov 2007 15:03:00 GMT</pubDate><guid>http://www.cnitblog.com/flyinggoal/articles/37105.html</guid><wfw:comment>http://www.cnitblog.com/flyinggoal/comments/37105.html</wfw:comment><comments>http://www.cnitblog.com/flyinggoal/articles/37105.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/flyinggoal/comments/commentRss/37105.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/flyinggoal/services/trackbacks/37105.html</trackback:ping><description><![CDATA[<u><font color=#800080>&nbsp;SWF文件结构大解剖</font></u>&nbsp;&nbsp;
<script src="http://blog.csdn.net/count.aspx?ID=564038&amp;Type=Rank"></script>
<span title=文章指数:98><img src="http://blog.csdn.net/images/star.gif" border=0><img src="http://blog.csdn.net/images/star.gif" border=0><img src="http://blog.csdn.net/images/star.gif" border=0><img src="http://blog.csdn.net/images/star.gif" border=0><img src="http://blog.csdn.net/images/star_half.gif" border=0></span>&nbsp;&nbsp;<img title="CSDN Blog推出文章指数概念，文章指数是对Blog文章综合评分后推算出的，综合评分项分别是该文章的点击量，回复次数，被网摘收录数量，文章长度和文章类型；满分100，每月更新一次。" alt="CSDN Blog推出文章指数概念，文章指数是对Blog文章综合评分后推算出的，综合评分项分别是该文章的点击量，回复次数，被网摘收录数量，文章长度和文章类型；满分100，每月更新一次。" src="http://blog.csdn.net/images/ask.gif" border=0>
<div class=postText>
<p>作者：牛胜超<font color=#f7f7f7>■</font>出处：天极设计在线</p>
<p>&#160;</p>
<p>&nbsp;</p>
<p>&nbsp;　Flash各种实例剖析我们都看过不少，不过你有没有想过swf文件内部到底是怎样的结构呢？不少闪客都想制作自己的Flash播放器，除了对控件的掌握和使用，更需要我们对swf文件的结构有深入的了解。于是我用WinHex分别打开一个swf文件和由它生成的exe文件，经过仔细分析对比后，我不仅发现了swf文件转变成exe可执行文件的秘密，并且将Flash自带播放器具备而控件却无法实现的那些功能的谜底也同时解开了。 </p>
<p>　　既然要&#8220;解剖&#8221;swf文件我们就要有&#8220;解剖&#8221;工具，我使用的是WinHex 9.2，你也可以用其它的二进制编辑器来查看。<br><br>　　<strong><font color=#ac0000>一、swf文件结构和信息</font></strong></p>
<p>　　左侧&#8220;偏移量&#8221;一格代表一个字节，相同或相关功能的字节用同一种背景色表示。偏移量用十进制数表示，每个字节的值均用十六进制数表示。 <br></p>
<p>
<table cellSpacing=1 cellPadding=2 width=560 align=center bgColor=#000000 border=0>
    <tbody>
        <tr bgColor=#ffffff>
            <td align=middle width=57><strong>偏移量</strong></td>
            <td align=middle width=492>
            <div align=center><strong>含义</strong></div>
            </td>
        </tr>
        <tr bgColor=#e3e3e3>
            <td align=middle width=57><font color=#006600>0</font></td>
            <td width=492 rowSpan=3><font size=+0>固定为46 57 53，也就是字母&#8216;F&#8217;&#8216;W&#8217;&#8216;S&#8217;<br>也有的文件为43 57 53，也就是字母&#8216;C&#8217;&#8216;W&#8217;&#8216;S&#8217; </font></td>
        </tr>
        <tr bgColor=#e3e3e3>
            <td align=middle width=57><font color=#006600>1</font></td>
        </tr>
        <tr bgColor=#e3e3e3>
            <td align=middle width=57><font color=#006600>2</font></td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=57><font color=#006600>3</font></td>
            <td width=492><font size=+0>文件版本号<br><br>在播放一个swf文件之前，可根据此值与当前播放器控件的版本号比较，看是否需要更新。</font>
            <p><font size=+0>（Flash MX 生成的swf文件版本号为6）</font></p>
            </td>
        </tr>
        <tr bgColor=#e3e3e3>
            <td align=middle width=57><font color=#006600>4</font></td>
            <td width=492 rowSpan=4><font size=+0>文件大小<br><br>正确的文件大小应该是按7、6、5、4的顺序来排列得到的十六进制数，单位是字节。</font></td>
        </tr>
        <tr bgColor=#e3e3e3>
            <td align=middle width=57><font color=#006600>5</font></td>
        </tr>
        <tr bgColor=#e3e3e3>
            <td align=middle width=57><font color=#006600>6</font></td>
        </tr>
        <tr bgColor=#e3e3e3>
            <td align=middle width=57><font color=#006600>7</font></td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=57><font color=#006600>8</font></td>
            <td width=492><font size=+0>影片宽高数据控制码<br><br>（<a href="http://www.clde.net/Document/Flash/Page/2005814/1633155_1.shtml" target=_blank><u><font color=#0000ff>详细说明见后</font></u></a>）</font></td>
        </tr>
        <tr bgColor=#e3e3e3>
            <td align=middle width=57><font color=#006600>9<br>&#183;<br>&#183;<br>&#183;</font></td>
            <td width=492><font size=+0>影片的宽度与高度数据存放区<br><br>所占字节数由控制码决定<br>（<a href="http://www.clde.net/Document/Flash/Page/2005814/1633155_1.shtml" target=_blank><u><font color=#0000ff>详细说明见后</font></u></a>）</font></td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=57><font color=#006600>N1</font></td>
            <td width=492><font size=+0>（作用不详）</font></td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=57><font color=#006600>N2</font></td>
            <td width=492><font size=+0>影片放映速度<br><br>设计时指定的速度，单位是（帧／秒）。</font></td>
        </tr>
        <tr bgColor=#e3e3e3>
            <td align=middle width=57><font color=#006600>N3</font></td>
            <td width=492 rowSpan=2><font size=+0>影片的总帧数<br><br>正确的帧数应该是按N4、N3的顺序排列得到的十六进制数。</font></td>
        </tr>
        <tr bgColor=#e3e3e3>
            <td align=middle width=57><font color=#006600>N4</font></td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=57><font color=#006600>N5</font></td>
            <td width=492><font size=+0>（作用不详）</font></td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=57><font color=#006600>N6</font></td>
            <td width=492><font size=+0>（作用不详）</font></td>
        </tr>
        <tr bgColor=#e3e3e3>
            <td align=middle width=57><font color=#006600>N7</font></td>
            <td width=492><font size=+0>背景色中红色值</font></td>
        </tr>
        <tr bgColor=#e3e3e3>
            <td align=middle width=57><font color=#006600>N8</font></td>
            <td width=492><font size=+0>背景色中绿色值</font></td>
        </tr>
        <tr bgColor=#e3e3e3>
            <td align=middle width=57><font color=#006600>N9</font></td>
            <td width=492><font size=+0>背景色中蓝色值</font></td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=57><font color=#006600>&#183;<br>&#183;<br>&#183;</font></td>
            <td width=492><font size=+0>影片数据区</font></td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=57>　</td>
            <td width=492 rowSpan=4><font size=+0>文件的最后四个字节为40 00 00 00</font></td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=57>　</td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=57>　</td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=57>　</td>
        </tr>
    </tbody>
</table>
</p>
<p>　　注：因长宽控制码所占字节数不确定，故其后的偏移量无法用具体数字来表示，改用N1、N2、N3等符号。</p>
<p>　　以上表格中所展示的是swf文件的结构，通过它你就能很清楚地明白哪部分对你编程有用，哪部分可以解决长期困绕的你的问题，怎么样？是不是开始偷着乐了？别着急 ，继续看更精彩的还在后面呢！</p>
<p>　　<strong><font color=#ac0000>二、swf文件中记录影片宽、高的方式</font><br></strong><br>　　前面表中第八个字节&#8220;影片宽高数据控制码&#8221;指的是下表中控制码一栏中的数字。第九个字节至第N个字节&#8220;影片的宽度与高度数据存放区&#8221;指的是下表中控制码右边的那一行数字。由于控制码的不同，宽度与高度的数据存放区的字节长度也不同。<br><br>　　下表中将控制码所在的字节分为两部分（高四位和低四位）。高低位不同的组合决定了数据区占用字节数以及不同的高度算法。<br><br>　　相应的控制码后的蓝色条表示数据区所占用的字节。五星代表<strong>有效数据</strong>（注意每个五星只占半个字节），其中前面几个连续的五星对应的数据记录了高度值，后面几个连续的五星 对应的数据记录了宽度值。<br><br>　　将连续的五星所在位置的数（十六进制）组合起来，得到四位或六位的十六进制数，将此数转换成十进制数，白色五星得到的数除以<strong>10</strong>就是影片宽度数值，红色五星得到的数除以<strong>40</strong>就是影片高度数值。<br><br>　　我对每一种控制码都给出一个具体例子，请对比文件中相应的字节和实际的宽度和高度值。 </p>
<p>&#160;</p>
<p>
<table cellSpacing=1 cellPadding=2 width=560 align=center bgColor=#003399 border=0>
    <tbody>
        <tr vAlign=center>
            <td align=middle width=86 bgColor=#ffffff height=30><font size=+0>控制码</font></td>
            <td vAlign=center align=middle bgColor=#cccccc colSpan=2 height=21><font size=+0>0</font></td>
            <td vAlign=center align=middle bgColor=#ffffff colSpan=2 height=21><font size=+0>1</font></td>
            <td vAlign=center align=middle bgColor=#cccccc colSpan=2 height=21><font size=+0>2</font></td>
            <td vAlign=center align=middle bgColor=#ffffff colSpan=2 height=21><font size=+0>3</font></td>
            <td vAlign=center align=middle bgColor=#cccccc colSpan=2 height=21><font size=+0>4</font></td>
            <td vAlign=center align=middle bgColor=#ffffff colSpan=2 height=21><font size=+0>5</font></td>
            <td vAlign=center align=middle bgColor=#cccccc colSpan=2 height=21><font size=+0>6</font></td>
            <td vAlign=center align=middle bgColor=#ffffff colSpan=2 height=21><font size=+0>7</font></td>
            <td vAlign=center align=middle bgColor=#cccccc colSpan=2 height=21><font size=+0>8</font></td>
            <td align=middle bgColor=#ffffff height=21><font size=+0>宽&#215;高</font></td>
        </tr>
        <tr>
            <td align=middle bgColor=#ffffff rowSpan=2><font size=+0>50</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle bgColor=#ffffff rowSpan=2><font size=+0>18&#215;18</font></td>
        </tr>
        <tr>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">B</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">4</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">B</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">4</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
        </tr>
        <tr>
            <td align=middle bgColor=#ffffff rowSpan=2><font size=+0>58</font></td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ff0000>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ff0000>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ff0000>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ff0000>★</font></td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle bgColor=#ffffff rowSpan=2><font size=+0>36&#215;18</font></td>
        </tr>
        <tr>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">5</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">A</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">B</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">4</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
        </tr>
        <tr>
            <td align=middle bgColor=#ffffff rowSpan=2><font size=+0>60</font></td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle bgColor=#ffffff rowSpan=2><font size=+0>100&#215;48</font></td>
        </tr>
        <tr>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">3</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">E</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">8</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">1</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">E</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
        </tr>
        <tr>
            <td align=middle bgColor=#ffffff rowSpan=2><font size=+0>68</font></td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ff0000>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ff0000>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ff0000>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ff0000>★</font></td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle bgColor=#ffffff rowSpan=2><font size=+0>160&#215;100</font></td>
        </tr>
        <tr>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">1</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">9</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">3</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">E</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">8</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
        </tr>
        <tr>
            <td align=middle bgColor=#ffffff rowSpan=2><font size=+0>70</font></td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle bgColor=#ffffff rowSpan=2><font size=+0>400&#215;320</font></td>
        </tr>
        <tr>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">F</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">A</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">C</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">8</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
        </tr>
        <tr>
            <td align=middle bgColor=#ffffff rowSpan=2><font size=+0>78</font></td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ff0000>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ff0000>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ff0000>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ff0000>★</font></td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle bgColor=#ffffff rowSpan=2><font size=+0>550&#215;400</font></td>
        </tr>
        <tr>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">5</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">5</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">F</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">F</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">A</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
        </tr>
        <tr>
            <td align=middle bgColor=#ffffff rowSpan=2><font size=+0>80</font></td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle bgColor=#ffffff rowSpan=2><font size=+0>1600&#215;1200</font></td>
        </tr>
        <tr>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">3</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">E</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">8</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">2</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">E</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">E</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
            <td align=middle width=14 bgColor=#ffffff>　</td>
        </tr>
        <tr>
            <td align=middle bgColor=#ffffff rowSpan=2><font size=+0>88</font></td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ff0000>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ff0000>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ff0000>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ff0000>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ff0000>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ff0000>★</font></td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff><font color=#ffffff>★</font></td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle width=14 bgColor=#3399ff>　</td>
            <td align=middle bgColor=#ffffff rowSpan=2><font size=+0>2880&#215;2880</font></td>
        </tr>
        <tr>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">1</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">C</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">2</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">7</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">8</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
            <td align=middle width=14 bgColor=#ffffff><strong><font face="Arial, Helvetica, sans-serif">0</font></strong></td>
        </tr>
    </tbody>
</table>
</p>
<p><font size=+0>　　注：由于Flash的图像尺寸的限制，控制码只有以上几种情况，编程时只需对以上几种情况进行判断，分别做不同的计算处理。</font> <br><br>　　<strong><font color=#ac0000>三、swf与exe文件之间的互相转换</font></strong><br><br>　　用Flash自带的播放器可将一个swf文件转换成一个可自动播放的exe文件，这个转换过程只不过是在该swf文件前后加上播放器的代码而达到的，当我们知道了这个转换原理后，我们就可以实现由exe向swf转换了。<br><br>　　对由swf文件转换成的exe文件进行分析后，我发现Flash自带的播放器只是对swf文件做了如下几步修改：<br><br>　　1、在一个swf文件前加上exe文件头，共5BFFF字节； <br>　　2、接下来是完整的swf文件内容； <br>　　3、再接下来四个字节是exe文件的结束标志； <br>　　4、最后是记录swf文件大小的四个字节。<br><br>　　将一个Flash影片的exe文件转换成swf文件，我们只需把swf文件转换成的exe文件的过程反着做一下就可以了，也就是将上述1、3、4步骤加上的东西 删除掉就可以了。<br><br>　　详见下表： <br></p>
<p>
<table cellSpacing=1 cellPadding=2 align=center bgColor=#006699 border=0>
    <tbody>
        <tr align=middle>
            <td align=middle width=16 bgColor=#ffffff><font size=+0>&#8595;</font></td>
            <td align=middle width=55 bgColor=#ffffff>
            <div align=center><font size=+0>偏移量</font></div>
            </td>
            <td width=211 bgColor=#ffffff>
            <div align=center><font size=+0>字节内容</font></div>
            </td>
            <td width=192 bgColor=#ffffff>
            <div align=center><font size=+0>备注</font></div>
            </td>
        </tr>
        <tr>
            <td align=middle width=16 bgColor=#eaeaea rowSpan=3>　</td>
            <td align=middle width=55 bgColor=#eaeaea><font size=+0>0</font></td>
            <td width=211 bgColor=#eaeaea rowSpan=3><font size=+0>4D 5A 90&#183;&#183;&#183;00 00</font></td>
            <td width=192 bgColor=#eaeaea rowSpan=3><font size=+0>exe文件头</font></td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=55 bgColor=#eaeaea><font size=+0>&#183;<br>&#183;<br>&#183;</font></td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=55 bgColor=#eaeaea><font size=+0>5BFFF</font></td>
        </tr>
        <tr>
            <td align=middle width=16 bgColor=#0000ff rowSpan=4>　</td>
            <td align=middle width=55 bgColor=#d7f2ff><font size=+0>5C000</font></td>
            <td width=211 bgColor=#d7f2ff><font size=+0>46（或43）</font></td>
            <td width=192 bgColor=#d7f2ff rowSpan=3><font size=+0>swf</font><font size=+0>文件头</font></td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=55 bgColor=#d7f2ff><font size=+0>5C001</font></td>
            <td width=211 bgColor=#d7f2ff><font size=+0>57</font></td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=55 bgColor=#d7f2ff><font size=+0>5C002</font></td>
            <td width=211 bgColor=#d7f2ff><font size=+0>53</font></td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=55 bgColor=#d7f2ff><font size=+0>5C003</font></td>
            <td width=211 bgColor=#d7f2ff><font size=+0>（可能为05、04、03、02、01）</font></td>
            <td width=192 bgColor=#d7f2ff><font size=+0>swf</font><font size=+0>文件版本号</font></td>
        </tr>
        <tr>
            <td align=middle width=16 bgColor=#ff0000 rowSpan=4>　</td>
            <td align=middle width=55 bgColor=#d7f2ff><font size=+0>5C004</font></td>
            <td width=211 bgColor=#d7f2ff rowSpan=4><font size=+0>记录swf文件大小的四个字节</font></td>
            <td width=192 bgColor=#d7f2ff rowSpan=4>　</td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=55 bgColor=#d7f2ff><font size=+0>5C005</font></td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=55 bgColor=#d7f2ff><font size=+0>5C006</font></td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=55 bgColor=#d7f2ff><font size=+0>5C007</font></td>
        </tr>
        <tr>
            <td align=middle width=16 bgColor=#0000ff rowSpan=5>　</td>
            <td align=middle width=55 bgColor=#d7f2ff><font color=#006600>&#183;<br>&#183;<br>&#183;</font></td>
            <td width=211 bgColor=#d7f2ff><font size=+0>swf</font><font size=+0>文件内容</font></td>
            <td width=192 bgColor=#d7f2ff>　</td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=55 bgColor=#d7f2ff>　</td>
            <td width=211 bgColor=#d7f2ff><font size=+0>40</font></td>
            <td width=192 bgColor=#d7f2ff rowSpan=4><font size=+0>swf</font><font size=+0>文件的结束标志</font></td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=55 bgColor=#d7f2ff>　</td>
            <td width=211 bgColor=#d7f2ff><font size=+0>00</font></td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=55 bgColor=#d7f2ff>　</td>
            <td width=211 bgColor=#d7f2ff><font size=+0>00</font></td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=55 bgColor=#d7f2ff>　</td>
            <td width=211 bgColor=#d7f2ff><font size=+0>00</font></td>
        </tr>
        <tr>
            <td align=middle width=16 bgColor=#cccccc rowSpan=4>　</td>
            <td align=middle width=55 bgColor=#eaeaea>　</td>
            <td width=211 bgColor=#eaeaea><font size=+0>56</font></td>
            <td width=192 bgColor=#eaeaea rowSpan=4><font size=+0>exe文件的结束标志</font></td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=55 bgColor=#eaeaea>　</td>
            <td width=211 bgColor=#eaeaea><font size=+0>34</font></td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=55 bgColor=#eaeaea>　</td>
            <td width=211 bgColor=#eaeaea><font size=+0>12</font></td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=55 bgColor=#eaeaea>　</td>
            <td width=211 bgColor=#eaeaea><font size=+0>FA</font></td>
        </tr>
        <tr>
            <td align=middle width=16 bgColor=#ff0000 rowSpan=4>　</td>
            <td align=middle width=55 bgColor=#d7f2ff>　</td>
            <td width=211 bgColor=#d7f2ff rowSpan=4><font size=+0>记录swf文件大小的四个字节</font></td>
            <td width=192 bgColor=#d7f2ff rowSpan=4><font size=+0>与5C004～5C007的内容相同</font></td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=55 bgColor=#d7f2ff>　</td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=55 bgColor=#d7f2ff>　</td>
        </tr>
        <tr bgColor=#ffffff>
            <td align=middle width=55 bgColor=#d7f2ff>　</td>
        </tr>
    </tbody>
</table>
</p>
<p>　　到这里我们对swf文件的解剖分析就结束了，你可以结合着Flash控件动手制作一个你自己的flash播放器，一定会很棒！</p>
<tr>
</tr>
<td align="center" height="40"></td>
<br></div>
<img src ="http://www.cnitblog.com/flyinggoal/aggbug/37105.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/flyinggoal/" target="_blank">风筝</a> 2007-11-30 23:03 <a href="http://www.cnitblog.com/flyinggoal/articles/37105.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在Delphi7中调试COM+ （看到一个关于这个的介绍，感觉不错）</title><link>http://www.cnitblog.com/flyinggoal/articles/19424.html</link><dc:creator>风筝</dc:creator><author>风筝</author><pubDate>Tue, 21 Nov 2006 02:56:00 GMT</pubDate><guid>http://www.cnitblog.com/flyinggoal/articles/19424.html</guid><wfw:comment>http://www.cnitblog.com/flyinggoal/comments/19424.html</wfw:comment><comments>http://www.cnitblog.com/flyinggoal/articles/19424.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/flyinggoal/comments/commentRss/19424.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/flyinggoal/services/trackbacks/19424.html</trackback:ping><description><![CDATA[
		<table style="TABLE-LAYOUT: fixed; WORD-BREAK: break-all" cellspacing="0" cellpadding="0" width="730" align="center" border="0">
				<tbody>
						<tr>
								<td style="FONT-SIZE: 12pt; COLOR: #ff6600" align="middle" width="742" height="32">在Delphi7中调试COM+</td>
						</tr>
						<tr>
								<td align="middle" bgcolor="#f7f7f7" height="25">作者：佚名  来源：不详  发布时间：2005-3-14 22:35:07  发布人：admin</td>
						</tr>
						<script language="javascript"><![CDATA[
var newasp_fontsize=9;
var newasp_lineheight=12;
]]&gt;</script>
						<tr>
								<td>
										<p align="right"> </p>
										<div class="ContentFont" id="NewaspContentLabel" style="PADDING-RIGHT: 10px; DISPLAY: block; PADDING-LEFT: 10px; PADDING-BOTTOM: 0px; PADDING-TOP: 0px">
												<font id="font_word" style="FONT-SIZE: 14px; FONT-FAMILY: 宋体, Verdana, Arial, Helvetica, sans-serif">&gt;开发COM+应用系统最令人头痛的问题便是如何调试 COM+组件了。由于COM+是执行在COM+的执行环境中，因此Delphi 的程序员无法像Delphi的分布式多层应用系统一样可以直接在 Delphi 的IDE 中设定应用程序服务器的断点来调试。 
<p>事实上， Delphi 仍然可以在 Delphi 的集成开发环境中调试 COM+组件，也可以让程序员在集成开发环境中在COM+组件的程序单元中设定断点，然后执行客户端应用程序调用 COM+组件。此时 Delphi 便会把执行控制权带到Delphi 的集成开发环境中，并且暂停在程序员设定的断点上让程序员开始调试。从此开始，程序员就可以像调试一般的应用程序一样来调COM+组件了。不过要如此调试COM+组件，程序员必须先做一些设定。</p><p></p><p>1、在Delphi 的集成开发环境中激活要被调试的 COM+ 组件项目，点Projects|Options 菜单，在弹出的对话框中选择Linker页，选中其中的include Td32 info 和 include remote debug symbol ；</p><p>2、点 Run|Install Com+ Objects菜单，注册COM+组件，最好是注册到新的应用程序，也可以注册到已有的应用程序（这个应用程序需要是由Delphi 的注册COM程序产生的）。</p><p>3、运行Win2000的 控制面板|管理工具|组件服务，在COM+应用程序中找到刚才COM注册的应用程序，点右键，选择“属性”菜单，在弹出的对话框中，选择“高级”页，选中其中的“在调试器中启动”选项，在下面的调试路径中会有类似如下的内容："C:\Program Files\Borland\Delphi7\Bin\bordbg70.exe" dllhost.exe /ProcessID:{9CEC476D-83A5-4C2B-AFF1-3E83A147B866}</p><p>4、回到Delphi的集成开发环境，点选Run|Parameters 菜单，在对话框中，HostApplication设为：C:\WINNT\system32\DLLHOST.EXE ，（要根据你的操作系统安装情况设定）。 Parameters 设为：/ProcessID:{9CEC476D-83A5-4C2B-AFF1-3E83A147B866}；这个GUID的值要和Win2000组件服务中的属性值一致，可以从那边直接COPY过来。</p><p>5、设置断点，在Delphi的集成开发环境中运行COM；</p><p>6、在<a class="wordstyle" href="http://www.18839.com/" target="_blank">Windows</a>中（或新开的Delphi环境中）运行调用这个COM的客户端程序。</p><p>这时会发现，Delphi开发环境中的COM停在断点处了，就可以接下来单步跟踪调试了。</p></font>
										</div>
								</td>
						</tr>
				</tbody>
		</table>
<img src ="http://www.cnitblog.com/flyinggoal/aggbug/19424.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/flyinggoal/" target="_blank">风筝</a> 2006-11-21 10:56 <a href="http://www.cnitblog.com/flyinggoal/articles/19424.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>关于com和com+的一点介绍</title><link>http://www.cnitblog.com/flyinggoal/articles/19420.html</link><dc:creator>风筝</dc:creator><author>风筝</author><pubDate>Tue, 21 Nov 2006 02:37:00 GMT</pubDate><guid>http://www.cnitblog.com/flyinggoal/articles/19420.html</guid><wfw:comment>http://www.cnitblog.com/flyinggoal/comments/19420.html</wfw:comment><comments>http://www.cnitblog.com/flyinggoal/articles/19420.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/flyinggoal/comments/commentRss/19420.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/flyinggoal/services/trackbacks/19420.html</trackback:ping><description><![CDATA[什么是COM？ <br />所谓COM（Componet Object Model，组件对象模型），是一种说明如何建立可动态互变组件的规范，此规范提供了为保证能够互操作，客户和组件应遵循的一些二进制和网络标准。通过这种标准将可以在任意两个组件之间进行通信而不用考虑其所处的操作环境是否相同、使用的开发语言是否一致以及是否运行于同一台计算机。 <br />COM的优点？ <br />首先：用户一般希望能够定制所用的应用程序，而组件技术从本质上讲就是可被定制的，因而用户可以用更能满足他们需要的某个组件来替换原来的那个。其次，由于组件是相对应用程序独立的部件，我们可以在不同的程序中使用同一个组件而不会产生任何问题，软件的可重用性将大大的得到增强。第三，随着网络带宽及其重要性的提高，分布式网络应用程序毫无疑问的成为软件市场上越来越重要的买点。组件价构可以使得开发这类应用程序的过程得以简化。 <br /><br /><br />什么是COM+？ <br />COM+并不是COM的简单升级，COM+的底层结构仍然以COM为基础，它几乎包容了COM的所有内容，COM+综合了COM、DCOM和MTS这些技术要素，它把COM组件软件提升到应用层而不再是底层的软件结构，它通过操作系统的各种支持，使组件对象模型建立在应用层上，把所有组件的底层细节留给操作系统，因此，COM+与操作系统的结合更加紧密。 <br />COM+不再局限于COM的组件技术，它更加注重于分布式网络应用的设计和实现。COM+继承了COM几乎全部的优势，同时又避免了COM实现方面的一些不足，把COM、DCOM和MTS的编程模型结合起来，继承了它们的绝大多数特性，在原有的特性上增加了新的功能。 <br /><br /><br />COM+的新的优点? <br />以下列出COM+的几个主要特性： <br /><br />COM+不仅继承了COM所有的优点，而且还增加了一些服务，比如队列服务、负载平衡、内存数据库、事件服务等。 <br /><br />队列服务对于分布式应用非常有意义，特别是在现在网络速度很慢的情况下，这种机制可以保证应用系统能够可靠地运行。在应用系统包含大量节点但服务器又繁忙的情况下，客户应用程序可以把它们的请求放到队列中，当服务器负载比较轻的时候再处理这些请求； <br /><br />又如COM+提供了负载平衡服务，它可以实现动态负载平衡，而且COM+应用程序的负载平衡特性并不需要编写代码来支持，客户程序和组件程序都可以按通常的方式实现。获得负载平衡特性并不是用程序设计的方式来实现的，而是通过配置实现分布式应用程序的负载平衡，如上所讲的队列服务，其实也反映了一种负载平衡。 <br /><br />(1) 真正的异步通讯。COM+底层提供了队列组件服务，这使客户和组件有可能在不同的时间点上协同工作，COM+应用无须增加代码就可以获得这样的特性。 <br /><br />(2) 事件服务。新的事件机制使事件源和事件接收方实现事件功能更加灵活，利用系统服务简化了事件模型，避免了COM可连接对象机制的琐碎细节。 <br /><br />(3) 可伸缩性。COM+的可伸缩性来源于多个方面，动态负载平衡以及内存数据库、对象池等系统服务都为COM+的可伸缩性提供了技术基础，COM+的可伸缩性原理上与多层结构的可伸缩特性一致。 <br /><br />(4) 可管理和可配置性。管理和配置是应用系统开发完成后的行为，在软件维护成本不断增加的今天，COM+应用将有助于软件厂商和用户减少这方面的投入。 <br /><br />(5) 易于开发。COM+应用开发的复杂性和难易程度将决定COM+的成功与否，虽然COM+开发模型比以前的COM组件开发更为简化，但真正提高开发效率仍需要借助于一些优秀的开发工具。 <br /><br />COM+标志着Microsoft的组件技术达到了一个新的高度，它不再局限于一台机器上的桌面系统，它把目标指向了更为广阔的企业内部网，甚至Internet国际互连网络。COM+与多层结构模型以及Windows操作系统为企业应用或Web应用提供了一套完整的解决方案。 <br />参考资料：<a href="http://www.blogchinese.com/user1/43043/archives/2005/52092.shtml" target="_blank">http://www.blogchinese.com/user1/43043/archives/2005/52092.shtml</a><img src ="http://www.cnitblog.com/flyinggoal/aggbug/19420.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/flyinggoal/" target="_blank">风筝</a> 2006-11-21 10:37 <a href="http://www.cnitblog.com/flyinggoal/articles/19420.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>一点winmax的知识</title><link>http://www.cnitblog.com/flyinggoal/articles/17452.html</link><dc:creator>风筝</dc:creator><author>风筝</author><pubDate>Thu, 28 Sep 2006 09:31:00 GMT</pubDate><guid>http://www.cnitblog.com/flyinggoal/articles/17452.html</guid><wfw:comment>http://www.cnitblog.com/flyinggoal/comments/17452.html</wfw:comment><comments>http://www.cnitblog.com/flyinggoal/articles/17452.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/flyinggoal/comments/commentRss/17452.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/flyinggoal/services/trackbacks/17452.html</trackback:ping><description><![CDATA[   通讯技术发展到今天，革命性变化往往不是发生在技术层面，而是将成熟的技术迅速推广到社会的各个领域，给整个社会生活带来巨大影响。<br />     <br />     　　WiMAX宽带接入的革命事件　　<br />     　　<br />     　　WiMAX由来<br />     　　<br />     　　6月9日英特尔公司副总裁兼亚太区总经理蒋安邦(John Antone)宣布，公司已经与大连和成都市政府签署了谅解备忘录，在上述城市布设最新的WiMAX宽带无线技术。根据备忘录，成都与大连架设的网络设施将全面启用最新的WiMAX宽带无线技术，从而为企业与家庭宽带接入的“最后一公里”问题提供了新的无线解决方案。<br />     <br />     　　其实在WiMAX产生之前，无线微波通讯就已经存在了很多年，从最早用于电视信号传输的微波干线，到后来作为线路备份，甚至C波段的卫星通讯。近几年中国联通又开通了工作在26G频段的LMDS无线接入服务，以及从2001年开始在部分城市招标开通的3.5G频段固定无线接入服务。微波无线通讯早就不是什么新的技术。<br />     <br />     　　但是自从2001年包括Nokia、英特尔在内的世界著名供应商发起成立WiMAX以后，WiMAX受到业界的高度关注。甚至被评选为未来最重要的十大技术之一。很多人甚至用取代3G的乐观态度寄予WiMAX以厚望。<br />     <br />     　　WiMAX（World Interoperability for Microwave Access）全称为全球微波接入互操作性，是基于IEEE802.16标准的无线城域网技术。虽然在WiMAX组织正式成立以前，微波通讯就已经在各个领域被利用，但是由于各家设备不兼容，没有一个权威的组织制定统一的协议标准并对各家的设备进行认证，加之世界各国对无线频谱的管理并不完全一致，每个设备厂商提供的解决方案有很强的专用性，应用领域和应用范围都受到限制，致使设备成本居高不下。WiMAX组织从2001年开始制定标准，并对芯片、设备进行认证，规模经济使成本下降成为可能，WiMAX的应用领域也随之扩大。<br />     <br />     　　据统计，截止到2002年美国有2400个ISP（互联网接入服务提供商）为超过6000个无线接入市场服务，但是由于标准不统一，各个供应商设备昂贵，不能互联，给用户带来了很大的负担。WiMAX的出现正好能够解决这个问题。<br />     <br />     　　现在WiMAX组织包括芯片制造商（例如英特尔）、设备供应商（例如阿尔卡特）、电信运营商（例如BT英国电信），产业链已经十分完整。目前全球有众多的实验网络，符合WiMAX标准的设备最早在今年第四季度可以提交商用，大规模应用将在2005年开始，英特尔计划在2006年推出集成移动WiMAX芯片的讯驰芯片组。参照WiFi的经验。WiMAX的规模应用为期不远。<br />     <br />     　　<br />     　　<br />     　　更快、更远、更便宜<br />     　　<br />     　　WiMAX技术的突出特点是比WiFi具有更远的覆盖半径。WiFi主要是解决100米内的无线接入问题，是属于WLAN（无线局域网）的范畴。WiFi在开阔地带最远可以达到300米，在室内一般有效覆盖范围在100米以内。而WiMAX最远可以达到50公里的覆盖范围，属于无线城域网（WMAN）的范畴，其典型应用的覆盖范围是6－10公里。相比3G提供小于2M的带宽，WiMAX每个基站最多可以划分成6个扇面，每个扇面可以提供70M独立带宽，并且基站的覆盖范围是3G基站的10倍。因此有人认为WiMAX将取代3G，成为下一代通讯的主流技术。<br />     <br />     　　不过这种看法还过于乐观，WiMAX是基于802.16协议，在早期通过的802.16标准里，工作频段是11——60G，不能提供非视线连接。所谓视线连接接，就是指通讯的基站和客户端之间不能有什么阻挡，必须存在一条光线（或者视线）可以直接通过的通道。这主要是由于微波通讯的特性所决定。高频信号绕过障碍的能力十分有限，同时还受天气影响，例如下雨通常会导致信号衰竭，通讯质量降低。同时802.16协议是基于固定无线接入技术设计，不能满足移动的需求，而3G是面向广域移动通讯的技术方案，在移动性和信号绕过障碍的能力上是802.16所不能比拟的。<br />     <br />     　　在此基础上WiMAX组织开发了802.16a，其工作的频段要比802.16低，主要工作在2——11G的频段范围，信号绕过障碍的能力得到提高，目前已经可以支持非视距传输，意味着在基站和客户端之间可以有树木或者建筑物的阻挡，WiMAX的应用领域被拓宽。<br />     <br />     　　针对802.16a不具备移动性能的问题，WiMAX在此基础上制定了802.16e标准。按照802.16e标准，手持PDA步行或者使用移动计算设备，无线连接也不会中断。因此WiMAX具有了移动性能。不过满足该标准的产品，要在2006年才能正式投入商用。<br />     <br />     　　根据分析机构的预测，由于WiMAX标准统一，基站和客户端的规模经济得以实现。到2005年，预计每套WiMAX芯片组的价格将在25美金左右，每个基站的建设成本将控制在20000美金以下。回顾WiFi客户端从千元级别迅速下降到百元级别，规模经济将是WiMAX最有竞争力的优势。保守计算，按照一个基站4个扇面，每个扇面提供50M带宽，覆盖范围为10公里，为每个客户提供512K独立带宽，一个基站可以同时为400个客户服务，每个客户分摊基站的费用为50美元，运营商的初期投入成本压力并不大。加上WiMAX对地形的良好适应性，在客户密度小的区域费用远远低于光纤或者双绞线，WiMAX在宽带接入领域将有很强的竞争力。<br />     <br />     　　<br />     　　<br />     　　组网灵活<br />     　　<br />     　　WiMAX的典型组网方式如图所示，在这套解决方案里，WiMAX主要应用在这样几个领域：<br />     <br />     　　1、蜂窝回程，在部署一个较大区域的无线接入网络时，可以利用WiMAX基站之间的无线链接，延伸网络覆盖范围。<br />     <br />     　　2、WiFi热点回程，如图中2所示，在一个区域部署WiFi热点，热点与互联网之间的远距离链接由WiMAX完成，延伸了热点的使用范围。<br />     <br />     　　3、社区宽带，对一些DSL或者Cable接入方式难以覆盖的地方，可以考虑采用WiMAX作为替代方案；相比之下，WiMAX较少受距离和社区密度影响；对于一些临时性的聚集地，例如展会，WiMAX部署周期短地特点也比DSL或者Cable接入方式拥有更大地灵活性。<br />     <br />     　　4、经济欠发达地区或者需要保护的地方，经济欠发达地区可能没有事前部署双绞线或者同轴电缆，重新布线受用户密度制约，经济性不高；而对于故宫这样的文物，重新布线更是不可能，WiMAX就成为一个良好的选择。<br />     <br />     　　5、最佳无线连接方式，对于在家庭部署了WiFi的用户，可能会临时移动到WiFi覆盖范围之外，这时候802.16e作为802.16a的扩展，可以保证移动用户在WiFi网络和WiMAX网络中平滑漫游，这样客户端可以自动选择利用WiFi还是WiMAX，保证了最佳的链接方式。<br />     <br />     　　在上述的几种组网方式中，WiMAX都支持数据、语音和视频。WiMAX独有的服务质量保证（QoS）、按需提供的带宽分配、自适应参数调整等特点，给组网带了更大的灵活性。<br />     <br />     　　例如在语音和视频服务中，对时延非常敏感，但是对差错就不那么敏感，而数据服务则正好相反，对时延不敏感，对差错非常敏感，WiMAX可以根据上层应用不同提供不同等级的服务质量保障，提高网络吞吐容量。<br />     <br />     　　商业用户可能需要更宽的带宽，而家庭用户可能就不需要很高的带宽，视频点播需要较小的上行带宽而需要很高的下行带宽，对这些WiMAX都可以灵活配置予以满足。在距离和通讯速度之间，WiMAX也可以自动适应，例如为了满足距离要求调整信号调制方式，降低速度保证通信。<br />     <br />     　　频谱波折不过就在英特尔全力推进WiMAX的时候，世界最大手机供应商，也是3G最重要的设备供应商，WiMAX的发起人之一Nokia宣布退出WiMAX（最新消息Nokia又宣布重新加入WiMAX组织）。业内有分析人士认为，Nokia的退出实际上反应了WiMAX的频谱难题。虽然视距传输的802.16和非视距传输的802.16a分别工作在11－60G的频段和2-11G的频段，表面看来频率资源非常丰富。但是各国对无线电频率的管理并不统一，在上述频段塞进了太多的应用：微波雷达、导航、遥感测试、卫星通信、WiFi等等。同时对一些不需要执照的频段，任何人都可以使用，这好比是在一个公共的会议室里，大家都可以大声说话，但是能否听见则是另一回事。Nokia的退出，实际上证实了这种担忧。已经有执照许可的频段面临竞争，不需要执照许可频段的又面临难以解决的干扰问题。WiMAX要适应各个国家的频谱问题，并不是一件容易的事。<br />     <br />     　　但是事情并没有看起来那么悲观，WiMAX在技术上的吸引力有足够动力改变这个现状。英特尔从今年4月起就开始了游说，英特尔的理由是既然现在无线电频率可以用在更多有趣的事上，为什么不可以改变它呢？<br />     <br />     　　2003年，在中国第三届宽带无线技术大会上，国家无线电管理局副局长谢飞波介绍，国际电信联盟在5G的频段上为无线固定、移动业务增加了频率，使5G频段上目前有600M的频率可以用于无线移动和固定通讯。这实际上已经开始着手给WiMAX宽带无线接入应用提供充足的频率资源。<br />     <br />     　　在3.5G频段上，中国从2001年6月和2003年2月开始进行了招标，在数个城市开展无线接入的尝试。<br />     <br />     　　比较有意思的是各种对WiMAX进行市场预测的分析报告，都把中国作为一个非常重要的市场。在其中一份分析资料中还把中国称为世界最大的宽带无线接入市场。<br />     <br />     　　这份报告分析，中国从2001年开始，用于ADSL的投资已经有数亿美元之多，通过ADSL接入互联网的用户从100万上升到1000万之多。中国在2000年将3.5G中的2个频段许可给了5个城市，2003年给了32个城市，很快中国300多个城市都将得到这个许可。<br />     <br />     　　这份报告还列举了在中国可能应用的业务领域，电话、互联网茶馆、医疗保险网络、企业电话交换机的中继线路、企业网络接入、银行专用网络以及高速移动互联网业务。<br />     <br />     　　目前看起来，已经没有什么力量能够阻挡WiMAX的应用了，唯一的悬念是拿WiMAX来干什么。数年前有一个宽带网络应用瓶颈调查，众说纷纭，但是后来的事实证明所有的应用、产业环境、消费意识都不是问题，当宽带变得像大白菜一样便宜时，所有的问题都不成为问题。<br />     <br />     　　WiMAX的革命性不在其他，就在更便宜上。便宜是上帝也无法阻挡的。<br /><img src ="http://www.cnitblog.com/flyinggoal/aggbug/17452.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/flyinggoal/" target="_blank">风筝</a> 2006-09-28 17:31 <a href="http://www.cnitblog.com/flyinggoal/articles/17452.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>