<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<?xml-stylesheet type="text/xsl" href="css/rss.xslt"?>
<?xml-stylesheet type="text/css" href="css/rss.css"?>
<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>无剑网</title><link>http://www.nosword.com/</link><description>淡泊明志的进化笔记. </description><generator>RainbowSoft Studio Z-Blog 1.8 Devo Build 80201</generator><language>zh-CN</language><copyright>粤ICP备06079003号</copyright><pubDate>Tue, 19 Aug 2008 18:12:37 +0800</pubDate><item><title>AS3播放音乐的完成事件soundComplete</title><author>violam@163.com (violam)</author><link>http://www.nosword.com/2008/08/as3_sound_complete_event/</link><pubDate>Wed, 13 Aug 2008 15:43:43 +0800</pubDate><guid>http://www.nosword.com/2008/08/as3_sound_complete_event/</guid><description><![CDATA[<p>AS3播放Mp3很简单，写两句sound = new Sound(request)然后监听Event.COMPLETE事件就可以开始播放了。播放中的进度和声道由SoundChannal对象负责，不过今天我遇到了一个小问题，关于SoundChannal的soundComplete事件，在播放暂停的时候，再继续播放，就无法监听播放完成这个事件。后来再仔细研究了一下，找到并解决了问题。</p><p>首先，帮助手册中写Event.soundComplete是由SoundChannal对象发出的，这个没错，不过它有一点没写清楚，就是每次调用Sound.Play()后返回的SoundChannal对象并不是原来的对象。为了把问题说清楚，我简单写一下流程。</p><p>首先是声明变量： var sound:Sound;&nbsp; var channal:SoundChannal;<br />第1步. 加载一个新声音: sound = new Sound(urlrequest)<br />第2步. 监听这个声音加载过程，有&ldquo;OPEN&rdquo;&ldquo;PROGRESS&rdquo;&ldquo;COMPLETE&rdquo;或者&ldquo;IO_ERROR&rdquo;这样的事件发生。<br />第3步. 加载了一定的数据后，可以开始播放： channal = sound.play(); 这个时候，声音播放的通道传递给了channal。<br />第4步. 监听音乐什么时候完成 channal.addEventListener(Event.SOUND_COMPLETE,play_is_complete);<br />第5步. 用户按了暂停按钮，把音乐暂停下来。SoundChannal和Sound都没有提供pause方法。压根就没有暂停方法，只能用 channal.stop();<br />第6步. 继续播放音乐，channal有stop却没有play方法，play方法在Sound对象里面，也就是说，我们只能停止，然后设定新的播放位置，让sound从这里开始重新播放。于是第6步就是不得不再写一次 channal = sound.play(postion); 但是这个时候出来的channal已经与第3步的channal不一样了，返回了一个新的SoundChannal对象。我们在第4步监听的事件是在旧的channal上，而现在新的并没有监听，表面上看起来像是失效了。结果就是音乐播放完成的时候，无法捕捉到soundComplete事件。<br />第7步. 正确的做法是，我们要还要再为第6步的新channal添加一个监听channal.addEventListener(Event.SOUND_COMPLETE,play_is_complete); 与第4步一样。<br />把第7步也补上，至此，问题解决。</p><p>刚开始做AS3的声音播放肯定会忽略第7步，这就是&ldquo;播放声音暂停后为什么会无法监听到播放完成事件&rdquo;的原因。这个问题花费了我30多分钟去调试。最后才发现问题是由一个小小的细节造成的：Sound.play()返回了新的SoundChannal，已经不是原来的那个了。搞程序确实比较费力，时间常常被耗在一些不起眼的小细节，很微小却又能让你的作品罢工。也许其他人已经写过了，就当是给自己是留个提醒备忘吧。</p>]]></description><category>Flash &amp;amp; ActionScript</category><comments>http://www.nosword.com/2008/08/as3_sound_complete_event/#comment</comments><wfw:comment>http://www.nosword.com/</wfw:comment><wfw:commentRss>http://www.nosword.com/feed.asp?cmt=82</wfw:commentRss><trackback:ping>http://www.nosword.com/cmd.asp?act=tb&amp;id=82&amp;key=696898ae</trackback:ping></item><item><title>AsWing备忘录 - AsWing 是什么用来干什么</title><author>violam@163.com (violam)</author><link>http://www.nosword.com/2008/08/aswing-memo-what-is-aswing/</link><pubDate>Sun, 10 Aug 2008 16:12:50 +0800</pubDate><guid>http://www.nosword.com/2008/08/aswing-memo-what-is-aswing/</guid><description><![CDATA[<p><a href="http://www.aswing.org">AsWing</a>是一套基于纯ActionScript 3脚本的组件框架，据说它的原型来自Java Swing。简单地说，就是用来做Flash界面的。AsWing在AS2时代的时候，已经被用在一些Flash商业制作上了，后来AS3出来以后，AsWing又有了AS3版本，它一直是<a href="http://osflash.org/">OSFlash</a>上面的一个开源项目。这个框架是世界性的，一开始就全部用英文制作，包括帮助文档都是英文的，但它的作者是中国人<a href="http://www.rgenerat.org/iileyblog/">iiley</a>，这是在Osflash.org上唯一一个拥有自主项目的中国人。我们可以在AsWing.Org网站上找到许多用它构成的案例和演示。</p><p>有了这套AsWing组件，代码写Flash的时候，制作用户交互界面就轻松很多了，几十行代码就能弄出一个像模像样的Flash交互作品。AsWing是基于MVC（Model View Control）模式的，组件之间的耦合度比较低。它的出现大大减轻了企业制作Flash的成本和时间，并且所有组件都继承自Sprite，操作起来非常多变灵活。AsWing现在还能自定义Look And Feel，也就是自己制作窗口的皮肤模板。通过LAF，你能让它面目全非却又完全不影响功能的使用。</p><p>AsWing现在的组件已经比较丰富了，容器、窗口、按钮、文字框、滚动、进度条、树Tree、表格等都比较齐全，大部分时候应用还算比较简单，只需建立一个子类实例，然后就能开始制作自己的作品了。根据官方的API文档，我算了一下，目前1.4版它一共有21个包和40多个J开头的组件，还有其他的相关辅助类无数，这么大堆东西都是一个人完成的，不能不让人佩服他的功底和坚持。</p><p>一句话，它是个好东西。但是由于纯代码操作，并且中文帮助比较少，起点有点高，ActionScript的初学者用起来会比较吃力。我也是在折磨了自己许多天后，才能逐渐开始摆弄这个家伙，一开始学肯定会有很多困难，不要气馁，在麻烦之中学习进步，坚持到最后就是胜利。</p>]]></description><category>AsWing</category><comments>http://www.nosword.com/2008/08/aswing-memo-what-is-aswing/#comment</comments><wfw:comment>http://www.nosword.com/</wfw:comment><wfw:commentRss>http://www.nosword.com/feed.asp?cmt=81</wfw:commentRss><trackback:ping>http://www.nosword.com/cmd.asp?act=tb&amp;id=81&amp;key=5325124a</trackback:ping></item><item><title>SWFKit自带的AS3包里面还有application包</title><author>violam@163.com (violam)</author><link>http://www.nosword.com/2008/08/swfkit-as3-package-application/</link><pubDate>Sun, 10 Aug 2008 15:10:36 +0800</pubDate><guid>http://www.nosword.com/2008/08/swfkit-as3-package-application/</guid><description><![CDATA[<a href="http://www.swfkit.com/" target="_blank">SWFKit</a>是个很好很实用的工具，但是不仅仅是Flash打包和做做屏保这么简单，它几乎是一个精简型的AIR，提供一个壳，把Flash的功能大大地扩充，这个东西正版价钱要七百多美金喔。它确实很强大，所以对我这样的菜鸟玩起来还是比较吃力的。<br/><br/>我做了一个SWFKit的东东，然后想直接在FlexBuilder用SWFKit附带的AS3扩展类来操作这个窗口，<br/>我的意思是直接利用SWFKit提供的AS3包，把我的窗口设为透明，或者改一下标题。（SWFKit本身不写任何代码）。<br/>但是在调试“Application.Appearance.windowShape”却一直搞不定。<br/>我的SWFKit控制包是照着手册这样写的：<br/><br/><textarea class="code" rows="10" cols="50">
package&nbsp;KitControl
{
&nbsp;import&nbsp;SWFKit.*;
&nbsp;public&nbsp;class&nbsp;KitOperator
&nbsp;{
&nbsp;&nbsp;public&nbsp;function&nbsp;KitOperator()
&nbsp;&nbsp;{
&nbsp;&nbsp;&nbsp;//empty
&nbsp;&nbsp;}

&nbsp;&nbsp;public&nbsp;function&nbsp;setWinBG():void&nbsp;{
//问题就出在下面这两句
&nbsp;&nbsp;&nbsp;var&nbsp;sys:Application&nbsp;=&nbsp;new&nbsp;Application();
&nbsp;&nbsp;&nbsp;sys.Appearance.windowShape&nbsp;=&nbsp;"$WSTRANSPARENT";
&nbsp;}
}
}
</textarea><br/><br/>然后建立一个实例来调用<br/><br/><textarea class="code" rows="10" cols="50">
&nbsp;import&nbsp;KitControl.KitOperator;

......
....
...


&nbsp;var&nbsp;kitTest:KitOperator&nbsp;=&nbsp;new&nbsp;KitOperator();
&nbsp;kitTest.setWinBG();

</textarea><br/><br/><br/>但是运行结果是什么反应都没有，如果setWinBG这个函数后面还有其他语句，它也不会执行，看起来似乎一调用这种Application.*.*的属性就会出错。其它类和函数我测试过了很正常，只是Application这个类很特殊，属性下面的属性，我就搞不懂了。<br/><br/>百度和英文Google都找不到解答。郁闷了一段时间，不离不弃下终于自己找到了答案。原来SWFKit的AS3包里面还有一个application包，里面又定义了几个Application的类。所以调用Application.Appearance不需要"new Application"，而是直接"new Appearance"，这点就与帮助手册有出入了（因为帮助手册的格式只是为在SWFKit里面写的Script提供的），所以才有上面那个错误。也就是说“Application.Appearance.windowShape”，只需要“Appearance.windowShape”就可以了。<br/><br/>找到了问题所在，于是，把下面两行改掉<br/><textarea class="code" rows="10" cols="50">
&nbsp;var&nbsp;sys:Application&nbsp;=&nbsp;new&nbsp;Application();
&nbsp;sys.Appearance.windowShape&nbsp;=&nbsp;"$WSTRANSPARENT";
</textarea><br/>换成:<br/><textarea class="code" rows="10" cols="50">
&nbsp;var&nbsp;appear:Appearance&nbsp;=&nbsp;new&nbsp;Appearance;
&nbsp;var&nbsp;alertBox:Dialogs&nbsp;=&nbsp;new&nbsp;Dialogs;
&nbsp;appear.windowShape&nbsp;=&nbsp;Appearance.WSTRANSPARENT;
&nbsp;alertBox.msgBox(appear.caption);
</textarea><br/><br/>运行，窗口终于透明了，还弹出一个对话框，告诉你窗口的标题，这就是预想中的效果。 <br/>问题终于解决了！！:D <br/>NND，SWFKit的资料极其少，就那么一个官方的英文帮助文档。搞这个东西就像自己摸着石头过河，痛苦啊。<br/>或者以后我也偶尔写一点罢，方便一下后来人。<br/>]]></description><category>Flash &amp;amp; ActionScript</category><comments>http://www.nosword.com/2008/08/swfkit-as3-package-application/#comment</comments><wfw:comment>http://www.nosword.com/</wfw:comment><wfw:commentRss>http://www.nosword.com/feed.asp?cmt=80</wfw:commentRss><trackback:ping>http://www.nosword.com/cmd.asp?act=tb&amp;id=80&amp;key=eb66f9b5</trackback:ping></item><item><title>Google和Yahoo将拥有Adobe授权的Flash解析能力</title><author>violam@163.com (violam)</author><link>http://www.nosword.com/2008/07/Adobe-Google-Yahoo-enabling-Flash-searches/</link><pubDate>Tue, 01 Jul 2008 16:43:58 +0800</pubDate><guid>http://www.nosword.com/2008/07/Adobe-Google-Yahoo-enabling-Flash-searches/</guid><description><![CDATA[<p>Adobe终于与Google和Yahoo就Flash 的RIA格式达成协议，很快Google和Yahoo将拥有Adobe授权的SWF和AIR富网络应用等解析能力。类似曾经的PDF格式开放，现在SWF也迎来了它的Search Engine Friendly 曙光。&nbsp;</p><hr /><p style="color: #777">&nbsp;July 1, 2008 (Computerworld) Adobe Systems Inc. today announced that an optimized Adobe Flash Player will be added to the search engines of Google Inc. and Yahoo Inc. under agreements with the two Internet firms. The tool will help the search engines better index dynamic Web content and rich Internet applications (RIA) that include the Flash file format, or Shockwave Flash (SWF).</p><p style="color: #00a"><a href="http://www.computerworld.com/action/article.do?command=viewArticleBasic&amp;articleId=9105058&amp;intsrc=news_ts_head">查看 computerworld 的原版新闻（英文）</a></p><hr /><p>前一段时间我还在抱怨Flash面向搜索非常不友好，以致被微软拿来做对比打击，并且导致成百上千的Flash Web Site一直难见天日。现在&ldquo;万能的Adobe&rdquo;终于开始着手解决了这个难题，对于Flash界这是非常重要的新闻，假如Google真的可以索引大部分内容，那么SWF文件将会有更广泛的应用，从而项目开发不必再过分考虑搜索的问题。</p><p>这个固然是个好消息，但是搜索的问题历史由来已久，并不是那么简单就能解决的。最麻烦的就是程序解析的问题，Flash类似于AJAX等RIA应用，代码占了大部分的篇幅；然后，文字等内容数据一般是从数据库或者后台服务端那里即时下载，SWF文件本身往往并没有保留多少文字内容，图形更多一些；并且大部分时候还需要一个用户行为来触发这个数据展现过程。所以，即使Google能把SWF解析得非常通透，它依然不一定能得到所有的数据。正如AJAX，如果不去点击某个按钮，JS代码就不会向服务器请求下载内容。 这一点，与PDF格式的开发非常不同，PDF本身就是一个数据载体格式，而SWF、AJAX等RIA应用更偏向于运行过程和交互功能，本身并没有附带多少可以索引的信息。 Flash设计者应该负起一部分责任，尽量给搜索多留点口粮。至于如何彻底解决这个问题？这个问题实在太过复杂，应该留给那些天才搜索引擎工程师和Adobe去解决，并且促之形成Flash行业的设计习惯。</p><p>SWF文件还是能够被解析了，不管怎么说，这都是个非常值得高兴的事情。</p>]]></description><category>Flash &amp;amp; ActionScript</category><comments>http://www.nosword.com/2008/07/Adobe-Google-Yahoo-enabling-Flash-searches/#comment</comments><wfw:comment>http://www.nosword.com/</wfw:comment><wfw:commentRss>http://www.nosword.com/feed.asp?cmt=79</wfw:commentRss><trackback:ping>http://www.nosword.com/cmd.asp?act=tb&amp;id=79&amp;key=6334dc83</trackback:ping></item><item><title>Flash AS3练习：改进的小球运动</title><author>violam@163.com (violam)</author><link>http://www.nosword.com/2008/06/another-ball-movement-on-flash/</link><pubDate>Thu, 26 Jun 2008 12:37:44 +0800</pubDate><guid>http://www.nosword.com/2008/06/another-ball-movement-on-flash/</guid><description><![CDATA[<p>继续学习ActionScript 3，仍然是通过Flex Builder写纯代码的Flash文件。</p><p>我把一开始做的那个简单的小球下落运动改进了一下，现在支持鼠标抛动方向和力度大小了，并且可以调节小球的重量、弹性（与墙壁产生碰撞后的动能损失）、空气摩擦阻力等。为了计算它跟随鼠标抛动的轨迹，我列了满满一张A4纸的计算公式，越算越晕。后来想了一个办法，终于把这个麻烦问题解决了。就是跟踪鼠标键按下的起点(X0,Y0)和放开的终点(X1,Y1)两个坐标，还有记录它按下的时间(t)，以此计算鼠标的拖动速度，显然时间t越短力度就越大，起点和终点的距离越大力度也是越大，根据这三个参数来决定小球获得动能的大小。然后再把小球在X轴和Y轴上的动能分开，分别计算独立的X轴速度和Y轴速度，这样就不用再去计算它的位移和角度了，问题大大地简化了。再加上重力这个因素，一个雏形就出来了。测试了一下，效果还不错。</p><p>在算重力的过程中我总算见识到了著名的&quot;浮点运算错误&quot;，据说这个浮点问题在C#, Java, ActionScript都存在。这个错误的表现为Number类型的浮点变量，在计算过程中并不是绝对准确的，例如0.2*3原本应该算出0.6，然而有时候结果会是0.6000000000000001，构成这个的原因很复杂，有人提出用 int(num*100)/100 这个语句进行保留两位小树的修正，但我测试了一下，前面int的确能取整，单除以100以后又出现新的浮点错误，真的很无奈。想不到电脑编程也会有靠不住的时候，只能尽量避免浮点运算了。</p><p>这个练习依然不是什么高深技术。不过里面一些基础知识都用到了。包、类、事件、函数定义、语法和组件都用上了，算是对ActionScript 3 又有了进一步的了解。至于源代码懒得贴上来了，因为对于显示列表里面的坐标还是写得很乱。有需要的，找个硕思Sothink SWF Decomplier 4.0反编译一下这个SWF文件也能看到源码了。</p><p>弹性为1，空气摩擦系数为0的时候，小球不会发生任何动能损失，会一直运动下去。原本重量也是可以为零的，可是因为依靠帧率计算重力加速度，加上落地的时候有些偏差，所以为0的时候计算不太准确，所以最低设为1。 调节一下这几个参数，看看运动所发生的变化，也是一种蛮有趣的自娱自乐。至少表明了，我的高中物理知识还没有完全还给老师，嘿嘿。</p><p><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" width="600" height="580"><param name="movie" value="http://www.nosword.com/upload/bounceBall.swf"><param name="quality" value="high"><param name="play" value="True"><embed src="http://www.nosword.com/upload/bounceBall.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="600" height="580" play="True"></embed></object></p>]]></description><category>Flash &amp;amp; ActionScript</category><comments>http://www.nosword.com/2008/06/another-ball-movement-on-flash/#comment</comments><wfw:comment>http://www.nosword.com/</wfw:comment><wfw:commentRss>http://www.nosword.com/feed.asp?cmt=78</wfw:commentRss><trackback:ping>http://www.nosword.com/cmd.asp?act=tb&amp;id=78&amp;key=1881d235</trackback:ping></item><item><title>此Blog将以Flash和PHP为主题</title><author>violam@163.com (violam)</author><link>http://www.nosword.com/2008/06/subject-for-flash-php-mainly/</link><pubDate>Wed, 18 Jun 2008 15:34:03 +0800</pubDate><guid>http://www.nosword.com/2008/06/subject-for-flash-php-mainly/</guid><description><![CDATA[<p>这个博客以后不会再怎么写SEO相关的东西。并非无话可说，而是SEO与博客实在是很矛盾的组合。SEO知识是私密的、相对个人化的，SEM思路更是不能轻易透露的东西；而博客却是开放的、共享的、带有传播性的。实际上我也没有怎么写过SEO，需要交流SEO请移步点石论坛吧，如有订阅这里RSS也可以退订了，接下来的内容将以Flash和PHP为主。有人说他的博客只讨好搜索引擎，不讨好任何访客读者；也有人把写博客当作一种营销和链接诱饵，写到最后也许是为了利益而写，各有各的想法。然而我觉得，只有兴趣和爱好所在，才能持久和深入。佛山有个程序员，居然搞了一套自己的分词程序，试了一下效果还蛮准确。类似DEDE放出来的那个。他弄这么复杂的东西完全没有考虑过回报，不为别的，只是因为兴趣，并且从中寻找乐趣。</p><p>看到有些人刚接触搜索优化不久，便开始写博建立名号，什么SEO策划、网络营销、网站推广称号挂了一大堆，甚至都开始收徒弟了。虽然不能以时间长短论英雄，但是有些现象实在令人想吐。我本人不是SEOer，我从来就没有说过自己是SEOer，尽管我也很喜欢搜索引擎优化和营销。另外，翻查一下去年到现在的RSS订阅列表，许多人已经长时间不更新博客，有几个甚至选择关闭，转做潜水的隐形人，不能不说有些可惜和伤感。去年看到冯英健博士说不再搞SEO的文章，当时我是相当地不解，老冯为什么要与SEO划清界线。现在也许能看得明白些了，他直接跳进了网络营销的高度，境界自然不是SEO再能相提并论的了。低调的老冯，但他深圳的新竞争力公司却不低调。以SEO技术之外的东西来作为SEO的武器，效果令人咋舌。例如普通的SEOer肯定会说Flash对SEO不好，应当抛弃。可是我见过某人运用一个并不复杂的Flash，完成了九万的外链。九万那是什么概念？如果换成手工和付费方式，累个半死也不一定能达到这个数量...&nbsp;网络营销的传播威力可见一斑。</p><p>传说百度一直都想处理所有带有SEO痕迹的站点，那我就响应百度的号召罢，淡化SEO转而讨好Flash和PHP爱好者，不再刻意讨好搜索引擎，Flash知识和PHP技术是非常适合公开和分享的，不需要顾忌些什么，也会有继续写下去的动力。至于友情链接里的同学们，链接还是会保留的，只不过SEO这三个字要改一改。这篇也许会是您在这里看到的有&ldquo;SEO&rdquo;密度的最后一篇文章了。</p>]]></description><category>其他记事</category><comments>http://www.nosword.com/2008/06/subject-for-flash-php-mainly/#comment</comments><wfw:comment>http://www.nosword.com/</wfw:comment><wfw:commentRss>http://www.nosword.com/feed.asp?cmt=77</wfw:commentRss><trackback:ping>http://www.nosword.com/cmd.asp?act=tb&amp;id=77&amp;key=819606f7</trackback:ping></item><item><title>当心! 最新流行Flash插件的漏洞攻击</title><author>violam@163.com (violam)</author><link>http://www.nosword.com/2008/06/look-out-flash-player-hole/</link><pubDate>Wed, 11 Jun 2008 23:49:11 +0800</pubDate><guid>http://www.nosword.com/2008/06/look-out-flash-player-hole/</guid><description><![CDATA[<p>这篇文章只是为了提醒各位小心最近的Flash播放器安全漏洞，由于这个问题的存在，你在浏览网页的时候就有很大的可能会中招，如果没有及时更新杀毒软件，面对这些恶意网页的时候中病毒或者木马的可能性非常大。这是Adobe在4月8日发出的安全公告，最近在国内开始扩大范围。官方的详细介绍：<a href="http://www.adobe.com/cn/support/security/bulletins/apsb08-11.html">http://www.adobe.com/cn/support/security/bulletins/apsb08-11.html</a>&nbsp;(中文技术文章),<span class="inner"><a style="color: #000" href="http://www.nosword.com/googlepack/">谷歌</a></span>或者百度一下可以找到更多关于这个漏洞的信息。据说将近九成的电脑都装有Flash插件，您的电脑中应该也有这个东西的存在，因为没有它，各大视频网站诸如土豆、优酷就没法看了。Flash播放器非常流行以至于这个漏洞的影响范围较大，就如前一段时间的鼠标ANI指针图标漏洞。中毒过程非常简单，只要没有安装杀毒软件，浏览带有恶意Flash动画的网页，就中招了。中毒的后果根据病毒和木马的不同又比较多种多样，譬如游戏账号被盗号之类。</p><p>解决这个问题，需要尽快把你的Flash插件更新到最新版本。<br /><b>最新版本 Adobe Flash Player 下载地址</b>： <a href="http://www.adobe.com/go/getflash">http://www.adobe.com/go/getflash</a><br />受影响的版本：<span class="inner"><a style="color: #000" href="http://www.nosword.com/googlepack/pdf/">Adobe</a></span> Flash Player 9.0.115.0 及早期版本。<br />升级这个新版本最好先到控制面板的&ldquo;添加删除&rdquo;里面去删掉老版本，再安装新版的，这样不容易出现一些奇怪兼容的问题。</p><p>我去Adobe官方网站逛了一遍，现在给出的新版本是9.0.124.0（还没有正式给出Flash 10），也就是说只要你的Flash插件是9.0.124.0或者以上就不用担心了。如何<span class="inner"><a style="color: #000" href="http://www.nosword.com/gaokao/">查询</a></span>现在的Flash插件版本？打开&ldquo;开始菜单&rdquo;的&ldquo;控制面板&rdquo;，接着是&ldquo;添加或删除程序&rdquo;，然后选&ldquo;Adobe Flash Player ActiveX&rdquo;，再它下面的&ldquo;单击此处获得支持信息&rdquo;，就可以看到关于这个ActiveX控件的版本信息。如下图所示：</p><p>&nbsp;<img alt="" src="/upload/fholedmo.gif" /></p>]]></description><category>其他记事</category><comments>http://www.nosword.com/2008/06/look-out-flash-player-hole/#comment</comments><wfw:comment>http://www.nosword.com/</wfw:comment><wfw:commentRss>http://www.nosword.com/feed.asp?cmt=76</wfw:commentRss><trackback:ping>http://www.nosword.com/cmd.asp?act=tb&amp;id=76&amp;key=291298d8</trackback:ping></item><item><title>升级到Zblog 1.8以及更换模板</title><author>violam@163.com (violam)</author><link>http://www.nosword.com/2008/05/update-to-zblog-1dot8/</link><pubDate>Fri, 16 May 2008 16:17:09 +0800</pubDate><guid>http://www.nosword.com/2008/05/update-to-zblog-1dot8/</guid><description><![CDATA[<p>Zblog 1.8 发布都有一段时间了，最大的变动就是插件和模板的管理。从表面上看与1.7没什么分别，但是后台的变动还是比较明显的，主题样式独立出来作为一个选项，对主题模板的支持更直观了。&ldquo;友情链接&rdquo;和&ldquo;导航菜单&rdquo;等也被拉出来作为一个独立项，不再寄居在&ldquo;文件管理&rdquo;下面了；网站设置方面也有一些改动。<br /><br />我一向是比较懒得去弄，趁着这次换模板，连版本也一起升级了。从1.7 到1.8 其实没什么难度，上传官方的安装文件，运行install.asp，会有两个选择&ldquo;全新安装&rdquo;还是&ldquo;升级&rdquo;，然后选择&ldquo;自动升级&rdquo;就可以了，事先要注意把数据库文件备份一个以防不测。主要的麻烦在于1.7使用的模板和1.8是有一些分别的，要做一些改动才能用在1.8上面，这些改动在Zblog官方网站都能找到，或者干脆在1.8后台换一个新的吧，我就不多说了。另外，换了这个黑白的模板，是我自己弄的，感觉一般般，因为比较照顾文字大小和内容，所以没怎么注意装饰和美观，留待以后有心情再慢慢美化好了。如果要我自己给这个模板打个<span class="inner"><a style="color: #000" href="http://www.nosword.com/gaokao/">分数</a></span>，我觉得应该70分勉强能达到吧，呵呵。<br />&nbsp;</p>]]></description><category>其他记事</category><comments>http://www.nosword.com/2008/05/update-to-zblog-1dot8/#comment</comments><wfw:comment>http://www.nosword.com/</wfw:comment><wfw:commentRss>http://www.nosword.com/feed.asp?cmt=74</wfw:commentRss><trackback:ping>http://www.nosword.com/cmd.asp?act=tb&amp;id=74&amp;key=445bd6f3</trackback:ping></item><item><title>有感于微软SilverLight的推广</title><author>violam@163.com (violam)</author><link>http://www.nosword.com/2008/04/sense-on-microsfot-silverlight-publish/</link><pubDate>Fri, 25 Apr 2008 20:30:11 +0800</pubDate><guid>http://www.nosword.com/2008/04/sense-on-microsfot-silverlight-publish/</guid><description><![CDATA[<p>Adobe与Microsoft的RIA大战越来越有看头了，随着Adobe AIR 1.0正式版和微软SilverLight 2.0 的推出，两者的暗战已经悄悄升级。十多天前，微软说：《<a href="http://tech.qq.com/a/20080416/000250.htm">尚无捆绑安装Silverlight插件计划</a>》，文中提到&ldquo;目前不仅仅有像腾讯公司，新浪，百度，淘宝这样的大互联网公司&hellip;&hellip;都在推动Silverlight的发展&rdquo;。与那些什么工具条插件之类的推广方式不同，微软这个东西的确&ldquo;没有捆绑&rdquo;。</p><p>之所以说它没有捆绑，是因为它的推广方式根本就已经超越了捆绑。例如其中提到的腾讯公司，这段时间重新下载了一个QQ2008 beta版，安装后看到它给我装了不少东西，首先就是腾讯自家的超级旋风下载工具、QQ工具栏和中文搜搜这三个东西，并且是可选安装的。然后发现控制面板的删除里面还多了一个SilverLight东西，而我的系统是刚刚从Ghost恢复的。为了证实这个方式确实存在，我特意又用ghost恢复了一次系统，然后对比安装了一次qq2008，其中安装过程中有一行字&ldquo;正在注册Microsoft SilverLight&rdquo;一闪而过。你说这是捆绑嘛？这绝对不是捆绑，不要用捆绑这个流氓式的词来侮辱的微软。要说责怪这是腾讯在协助推广的话，说不定QQ2008还真的需要用到这个插件呢，一切都是恰到好处。这有让我想起了Nokia的手机软件套装需要安装.Net Farmework，并且最近看到ATI的显卡驱动控制中心，也是基于.Net Farmework的，从驱动程序级进行控制，想不安装都不行了。微软的合作伙伴何止上面提到的这几个。这再一次印证了我自己关于分享和推广的想法，无论暴风影音这样的解码包，搜狗拼音，遨游maxthon浏览器，以及后来被收购FlashGet快车下载，他们的发展和转变基本都能见证Open Share的效果，对于推广的思路是越来越清晰了。</p><p>以微软的霸主地位来说，要推这样一个小东西太容易了，确实不需要捆绑。尽管Vista卖得不是很好，XP系统还是占了大部分的天下，但是别忘记XP里面有一个自动更新的利器，这个自动更新除了自动安装补丁以外，还是一个继续补充后续计划的好东西。例如当时的XP sp2这个大块头补丁，很大一部分就是通过自动更新发放的。多少木马病毒对它恨之入骨，有些黑色的客还编织了很多诱骗用户手动关掉自动更新的谎言，以便改善病毒木马的生存环境。可见它确实是个利器，所以目前大部分的软件都拥有了自动更新的功能。</p><p>在这么强力的策略下，微软银光的安装率不断上升。据说已经&ldquo;自Silverlight推出后，全球平均每天下载数已超过150万&rdquo;，并且号称从2007年发布至今，中国已经有三分之一的电脑安装了SilverLight，是有一点泰山压顶的感觉。对于其他那些单薄的软件作者，看到这种情况会如何黯然销魂呢？至少我个人是很眼红很流口水的。如果有那种资源，谁又愿意去捆绑呢&hellip;&hellip;</p><p>花开两支，各表一端，再回头来看看Adobe。尽管我个人偏爱Flash，但是Flash确实一直有一个很致命的地方，就是对搜索引擎非常不友好，以致于微软都经常拿这个硬伤来做借口攻击Adobe的体系。微软号称SilverLight能以XAML格式作为信息载体，从而实现搜索引擎爬行的可行性。而对于Adobe的MXML，AIR中的MXML是放在客户端的，与搜索关系不大。部署在服务器端的Flex，MXML却是用在描述构建生成一个Swf表现层，甚至包含数据库操作，绝对不会呈现到前台。所以面对搜索蜘蛛的，就只有swf文件，也就是说除非搜索引擎具有解析SWF文件的能力，否则别想从里面得到什么可索引的内容。这点与PDF和XLS文档是有点相似，可以看到未来的。</p><p>尽管Flash的这个搜索的问题还是挺严重，不过事实上的确一直在改善，在当年老版本的Flash输出里面，所有的文字都是被打散成矢量输出的，我印象最深的就是带有&ldquo;口&rdquo;偏旁部首的字，这个&ldquo;口&rdquo;都会被填充成一个方块。后来，文字不再打散成矢量图片了，文字等描述得以保留下来，这个改变就是现在google能够爬行swf文件的基础，非图片的文字才能被搜索引擎的蜘蛛识别，因为毕竟现在的蜘蛛实际上还是个瞎子。而当时Flash保留文字并不是为搜索考虑的，而是为了方便swf文件中的内容更新，和通过Actionscript控制文字的显示。换句话说，那时的Flash是完全没有搜索引擎优化这样的意识的，否则就不会是现在这个鸟样了，否则Google的蜘蛛就不会在面对Flash文件的时候如此痛苦了，否则就不会被微软拿来做口实了&hellip;&hellip;怎么那么多否则。不过SEO在国外发展得比较广泛，再加上微软如此吹擂XAML格式是如何如何的SEO，相信Adobe想不痛心疾首都不行。痛定思痛后难免不改进swf格式让他兼容更多的解析。比如我个人就建议给swf文档加上一个文字性的描述，就像当年的HTML不得不为自己在head区弄点meta一样。就连JPG图片格式都有扩展描述了，你SWF要想融合更多人民群众，就不能不添加更多的团结策略。</p><p>微软和Adobe，看来是会平分天下了。谁也别想打倒谁，选择微软和选择Adobe都是一样有前途的。微软有自己的.Net留下来的大量人才资源，Adobe也一样有非常广泛的Flash群众基础，并且Adobe的设计人员还比微软要多一些。现在Flash的分工更加明确了，Flex Builder的出现，使得平面设计师和程序员的专业分工越来越明确了，以后会越来越少很少听到要谁同时精通美术和脚本编程的。有人反映说Flash CS3变化太大，以致于许多老用户都适用不了，实际上那是因为它已经进入了一个分工协作的新时代。现代的社会不正也是分工越来越明确么？</p><p>RIA如此丰富多彩，难怪我本人会像金属遇到磁铁，被它深深吸引难以自拔，甚至有点超过了目前比较有钱途的SEO作业。试看两年以后，搜索引擎会是一个什么样的面貌？Web浏览器还会像现在这样几乎是上网的唯一吗？</p>]]></description><category>RIA 研究</category><comments>http://www.nosword.com/2008/04/sense-on-microsfot-silverlight-publish/#comment</comments><wfw:comment>http://www.nosword.com/</wfw:comment><wfw:commentRss>http://www.nosword.com/feed.asp?cmt=73</wfw:commentRss><trackback:ping>http://www.nosword.com/cmd.asp?act=tb&amp;id=73&amp;key=b58d9b86</trackback:ping></item><item><title>不加www的域名301转向解决方法</title><author>violam@163.com (violam)</author><link>http://www.nosword.com/2008/04/no-www-301-asp-php/</link><pubDate>Sun, 06 Apr 2008 14:52:04 +0800</pubDate><guid>http://www.nosword.com/2008/04/no-www-301-asp-php/</guid><description><![CDATA[<p>有些同志提到一个比较仔细的301转向问题，即加www开头和不加www开头的域名，都是绑定在同一个目录，要让它们实现统一会遇到麻烦。例如笔者要把http://nosword.com转向到http://www.nosword.com， 一来是照顾部分人输入网址不习惯加www的习惯，二来也为了使搜索引擎不至于形成两份相同的复制内容；而这两个不同的URL在虚拟主机上通常是绑定到同一个目录路径的，甚至使用同一个默认初始文件，如default.asp，index.php等，并且大部分的虚拟主机设置有限，应该如何设置301转向使得这两者统一？有同志提出专门使用两个空间把它们分开，一个空间绑定www.nosword.com, 另一个空间绑定nosword.com，然后再设置转向，虽然这样可行但是成本比较高了。笔者在花了一些时间分析后，觉得以下的ASP和PHP解决方案还是比较快捷可行的。 </p><p>首先，Google的Webmaster Tools后台已经有这个细心的选项，位于&quot;工具(Tools)&quot;菜单下面的&quot;设置首选域名(Set preferred domain)&quot;，可以让网站主手动选择适合的域名，以防止重复收录。然而对于百度之类的其他搜索引擎，还没有提供这样的管理功能，所以还是不得不在自己的网站之中设置301转向。因此，我写了一段简单的代码，用于检测网址之中是否带有&quot;www.&quot;这四个字符，如果没有，则可以进行301转向，如果有&quot;www.&quot;则保持原样不做任何动作。把这段代码放进网站的首页文件，基本能满足这个转向的问题。 </p><p><strong>ASP版本 - 检测当前的域名中是否带有&quot;www.&quot;字样</strong> </p><p><font color="#ff6600">&lt;% <br />Dim theUrl <br />theUrl = Lcase(Request.ServerVariables(&quot;HTTP_HOST&quot;) )<br />If Instr(theUrl, &quot;www.&quot;)&lt;1 Then <br />'这一行文字可以替换成放置301转向代码 <br />Response.Write &quot;测试信息：网址里面没有www. 字符，应该转向&quot; <br />Else <br />Response.Write &quot;测试信息：找到了www. 字符，不做任何动作&quot; <br />End If <br />%&gt;</font> <br /></p><p><strong>PHP版本 - 检测当前的域名中是否带有&quot;www.&quot;字样</strong> </p><p><font color="#ff6600">&lt;?php <br />$theurl = strtolower($_SERVER[&quot;HTTP_HOST&quot;]); <br />if (strpos($theurl, &quot;www.&quot;) === false){ <br />// 这一行文字可以替换成放置301转向代码 <br />echo &quot;网址里面没有www. 字符，应该转向&quot;; <br />}else{ <br />echo &quot;测试信息：找到了www. 字符，不做任何动作&quot;; <br />} <br />?&gt; </font></p><p>上面的代码再配合乐思蜀的《<a rel="bookmark" href="http://www.dunsh.org/2008/03/19/301-redirect-code/">301转向代码合集</a>》（<a www.dunsh.org="" href="http://www.dunsh.org/2008/03/19/301-redirect-code/">http://www.dunsh.org/2008/03/19/301-redirect-code/</a>），就能完全解决这个郁闷的问题了，唯一需要注意的是这段简单代码志只判断www存在与否，因此bbs等论坛域名也会被转向，因此只适用于放在绑定网站的首页文件之中。我在自己的ASP和PHP网站分别做了测试，并且使用了在线301转向检测工具进行测试，都能正确检测出转向，因此面对搜索引擎的蜘蛛应该没有问题，时间问题就不做实际证明了，希望有实践过的同志证实一下实际效果。 </p><p>原载：无剑网<br />原文路径：<a href="http://www.nosword.com/200804/no-www-301-asp-php/">http://www.nosword.com/200804/no-www-301-asp-php/</a><br />版权声明：转载请以链接的形式注明作者及原出处，并保留本版权信息，严禁一切非法复制。</p>]]></description><category>SEO/SEM笔记</category><comments>http://www.nosword.com/2008/04/no-www-301-asp-php/#comment</comments><wfw:comment>http://www.nosword.com/</wfw:comment><wfw:commentRss>http://www.nosword.com/feed.asp?cmt=72</wfw:commentRss><trackback:ping>http://www.nosword.com/cmd.asp?act=tb&amp;id=72&amp;key=ea348ddb</trackback:ping></item></channel></rss>
