<?xml version="1.0" standalone="yes"?>
<?xml-stylesheet type="text/xsl" href="css/rss.xslt"?>
<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.fonlan.cn/</link><description>^_^但求精品^_^ - </description><generator>RainbowSoft Studio Z-Blog 1.8 Walle Build 100427</generator><language>zh-CN</language><copyright>Copyright © 2008 www.fonlan.cn All Rights Reserved [浙ICP备08107007号]var gaJsHost = ((&amp;quot;https:&amp;quot; == document.location.protocol) ? &amp;quot;https://ssl.&amp;quot; : &amp;quot;http://www.&amp;quot;);document.write(unescape(&amp;quot;%3Cscript src='&amp;quot; + gaJsHost + &amp;quot;google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E&amp;quot;));try {var pageTracker = _gat._getTracker(&amp;quot;UA-5374908-1&amp;quot;);pageTracker._trackPageview();} catch(err) {}</copyright><pubDate>Sat, 11 Sep 2010 00:49:05 +0800</pubDate><item><title>解决由纳米机器人造成的Jumplist失效</title><author>fonlan@gmail.com (fonlan)</author><link>http://www.fonlan.cn/post/78.html</link><pubDate>Thu, 25 Mar 2010 22:14:39 +0800</pubDate><guid>http://www.fonlan.cn/post/78.html</guid><description><![CDATA[<p>&nbsp;不少网友反映在装了纳米机器人后，系统的Jumplist功能就失效了，不过一直不知道什么原因。最近需要从纳米盘下载个东西，就装了纳米机器人，终于重现了这个故障。其实原因很简单，就是因为选中了纳米机器人的&ldquo;资源管理器菜单&rdquo;，解决方法同样简单，不允许纳米机器人创建&ldquo;资源管理器菜单&rdquo;就可以了，具体方法看图：</p><p><img onload="ResizeImage(this,530)" src="http://www.fonlan.cn/upload/2010-03-25_203201.png" alt="" title="" /></p>]]></description><category>教程</category><comments>http://www.fonlan.cn/post/78.html#comment</comments><wfw:comment>http://www.fonlan.cn/</wfw:comment><wfw:commentRss>http://www.fonlan.cn/feed.asp?cmt=78</wfw:commentRss><trackback:ping>http://www.fonlan.cn/cmd.asp?act=tb&amp;id=78&amp;key=14af0247</trackback:ping></item><item><title>Intel无线网卡在Win7下修改MAC地址的方法及限制</title><author>fonlan@gmail.com (fonlan)</author><link>http://www.fonlan.cn/post/74.html</link><pubDate>Thu, 12 Nov 2009 19:47:03 +0800</pubDate><guid>http://www.fonlan.cn/post/74.html</guid><description><![CDATA[<p>&nbsp;我的无线网卡是Intel的4965AGN，在XP下更改MAC地址那是很简单的事。但是到了Win7下却怎么都没法修改了，驱动中没有相关选项，用专门修改MAC地址的软件也不行，Google了一下发现不少网友也遇到了这个问题，而且没有解决办法。可以说是不死心吧，就拿了个改MAC地址的软件不断的试，随机生成一个MAC地址，然后用ipconfig /all命令来查看修改是否成功，试了不知道多少次，期间却发现有几次修改成功了，一开始以为当时自己进行了什么特殊操作，不过后来不管自己怎么重现当时的操作顺序都无法再次重新修改。后来试的时候又发现有几次是修改成功的，记录下修改成功的那几个MAC地址，发现只要是那几个MAC地址就能成功，随机再生成一个往往就不行了。遂对那几个成功的MAC地址进行逐位修改&hellip;&hellip;得出了以下结论：</p><p>在Win7下修改Inter无线网卡地址时，从左往右第二个字符必须为2、6、A、E其中之一，如：<br /><br/>00:00:00:00:00:00 &nbsp;&mdash;&mdash; &nbsp;<span style="color: rgb(255, 0, 0); ">无效</span><br /><br/>02:00:00:00:00:00 &nbsp;&mdash;&mdash; &nbsp;<span style="color: rgb(0, 0, 255); ">有效</span><br /><br/>0A:00:00:00:00:00 &nbsp;&mdash;&mdash; &nbsp;<span style="color: rgb(0, 0, 255); ">有效</span></p><p>至于用来修改的软件很多，比如Mac MakeUp、网卡地址修改器等。</p><p>虽然依然不能随心所欲的修改MAC地址，但多少有些头绪了，希望Intel尽早解决这个问题。另外如果大家有更好的方法请告诉我！</p>]]></description><category>教程</category><comments>http://www.fonlan.cn/post/74.html#comment</comments><wfw:comment>http://www.fonlan.cn/</wfw:comment><wfw:commentRss>http://www.fonlan.cn/feed.asp?cmt=74</wfw:commentRss><trackback:ping>http://www.fonlan.cn/cmd.asp?act=tb&amp;id=74&amp;key=9140528e</trackback:ping></item><item><title>创建一个不占资源的多功能“快捷方式”</title><author>fonlan@gmail.com (fonlan)</author><link>http://www.fonlan.cn/post/65.html</link><pubDate>Sat, 05 Sep 2009 13:59:21 +0800</pubDate><guid>http://www.fonlan.cn/post/65.html</guid><description><![CDATA[<p>先用一个图片来说明这个&ldquo;快捷方式&rdquo;的作用。</p><p><img onload="ResizeImage(this,530)" src="http://www.fonlan.cn/upload/2009-08-30_224755.png" alt="" title=""/></p><p>嗯，这个&ldquo;快捷方式&rdquo;其实也没什么特色是不是？不过最重要的一点是<span style="color: rgb(255, 0, 0);">它是完全由系统自带的功能实现的，并且不占用任何资源，不论是XP、Vista还是Win7，全部通用。</span>至于Win98&hellip;&hellip;好吧，我承认我没测试过。</p><p>这个&ldquo;快捷方式&rdquo;是完全通过修改注册表实现的，与其说是&ldquo;快捷方式&rdquo;，更准确的说它是一个类。我以一个示例注册表文件来说明：</p><p><span style="color: rgb(0, 0, 255);">Windows Registry Editor Version 5.00</span></p><p><span style="color: rgb(0, 0, 255);">[HKEY_CLASSES_ROOT\CLSID\{7986336A-DFB4-4375-8841-1489E75A7571}]</span></p><p><span style="color: rgb(0, 0, 255);">[HKEY_CLASSES_ROOT\CLSID\{7986336A-DFB4-4375-8841-1489E75A7571}\DefaultIcon]<br />@=&quot;D:\\Program Files\\SunChrome\\Chrome.exe,0&quot;</span></p><p><span style="color: rgb(0, 0, 255);">[HKEY_CLASSES_ROOT\CLSID\{7986336A-DFB4-4375-8841-1489E75A7571}\Shell]<br /></span></p><p><span style="color: rgb(0, 0, 255);">[HKEY_CLASSES_ROOT\CLSID\{7986336A-DFB4-4375-8841-1489E75A7571}\Shell\Open]<br />@=&quot;Chrome&quot;<br />&quot;Icon&quot;=&quot;D:\\Program Files\\SunChrome\\Chrome.exe,0&quot;<br /></span></p><p><span style="color: rgb(0, 0, 255);">[HKEY_CLASSES_ROOT\CLSID\{7986336A-DFB4-4375-8841-1489E75A7571}\Shell\Open\Command]<br />@=&quot;D:\\Program Files\\SunChrome\\Chrome.exe&quot;<br /></span></p><p><span style="color: rgb(0, 0, 255);">[HKEY_CLASSES_ROOT\CLSID\{7986336A-DFB4-4375-8841-1489E75A7571}\Shell\Firefox]<br />@=&quot;Firefox&quot;<br />&quot;Icon&quot;=&quot;D:\\Program Files\\Firefox3\\FirefoxLoader.exe,0&quot;<br /></span></p><p><span style="color: rgb(0, 0, 255);">[HKEY_CLASSES_ROOT\CLSID\{7986336A-DFB4-4375-8841-1489E75A7571}\Shell\Firefox\Command]<br />@=&quot;D:\\Program Files\\Firefox3\\FirefoxLoader.exe&quot;</span></p><p><span style="color: rgb(0, 0, 255);">[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace\{7986336A-DFB4-4375-8841-1489E75A7571}]<br />@=&quot;&quot;</span></p><p>上面这个注册表文件中的{7986336A-DFB4-4375-8841-1489E75A7571}可不是什么随便的字符串，它叫CLSID（类标识符），可以由我在文末提供的工具guidgen来生成。至于什么是CLSID，大家自己上网查去，不在本文的讨论范围内。下面我分别讲解上面每段注册表文件的含义：</p><p><span style="color: rgb(0, 0, 255);">[HKEY_CLASSES_ROOT\CLSID\{7986336A-DFB4-4375-8841-1489E75A7571}]<br />@=&quot;Chrome&quot;</span></p><p>这句表示创建一个标识符为{7986336A-DFB4-4375-8841-1489E75A7571}的类，名为Chrome，同时这个Chrome也是最终在桌面显示图标的名称。</p><p><span style="color: rgb(0, 0, 255);">[HKEY_CLASSES_ROOT\CLSID\{7986336A-DFB4-4375-8841-1489E75A7571}\DefaultIcon]<br />@=&quot;D:\\Program Files\\SunChrome\\Chrome.exe,0&quot;</span></p><p>这句定义了这个类在桌面上显示的图标，当然你也可以直接使用ico文件。</p><p><span style="color: rgb(0, 0, 255);">[HKEY_CLASSES_ROOT\CLSID\{7986336A-DFB4-4375-8841-1489E75A7571}\Shell]<br /></span></p><p><span style="color: rgb(0, 0, 255);">[HKEY_CLASSES_ROOT\CLSID\{7986336A-DFB4-4375-8841-1489E75A7571}\Shell\Open]<br />@=&quot;Chrome&quot;<br />&quot;Icon&quot;=&quot;D:\\Program Files\\SunChrome\\Chrome.exe,0&quot;<span class="Apple-style-span" style="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); ">（此参数在XP下无效）</span></span></p><p>上面这句定义了双击这个图标的右键菜单第一项（也就是默认项），在右键中显示的名称和图标，如果去掉Icon这个值，则右键相应项前没有图标。</p><p><span style="color: rgb(0, 0, 255);">[HKEY_CLASSES_ROOT\CLSID\{7986336A-DFB4-4375-8841-1489E75A7571}\Shell\Open\Command]<br />@=&quot;D:\\Program Files\\SunChrome\\Chrome.exe&quot;</span></p><p>这句定义了双击这个图标时的默认操作，也就是所打开的程序，就像上例定义的，我让他打开Chrome。</p><p><span style="color: rgb(0, 0, 255);">[HKEY_CLASSES_ROOT\CLSID\{7986336A-DFB4-4375-8841-1489E75A7571}\Shell\Firefox]<br />@=&quot;Firefox&quot;<br />&quot;Icon&quot;=&quot;D:\\Program Files\\Firefox3\\FirefoxLoader.exe,0&quot;</span></p><p>接下去这个就是定义右键菜单的下一项了。<span style="color: rgb(0, 0, 255);">[HKEY_CLASSES_ROOT\CLSID\{7986336A-DFB4-4375-8841-1489E75A7571}\Shell]</span>后所跟随的&ldquo;Firefox&rdquo;字样可随便自定义，一般为了便于辨别常常使用所启动程序的名称。<br />默认值表示他在右键菜单中所显示的名称，Icon的值表示他在右键菜单中显示的图标。</p><p><span style="color: rgb(0, 0, 255);">[HKEY_CLASSES_ROOT\CLSID\{7986336A-DFB4-4375-8841-1489E75A7571}\Shell\Firefox\Command]<br />@=&quot;D:\\Program Files\\Firefox3\\FirefoxLoader.exe&quot;</span></p><p>这项当然就是表示右键中Firefox这项所启动的程序了。</p><p><span style="color: rgb(0, 0, 255);">[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace\{7986336A-DFB4-4375-8841-1489E75A7571}]<br />@=&quot;&quot;</span></p><p>我们在上面已经创建了一个名为{7986336A-DFB4-4375-8841-1489E75A7571}的类标识符，那么如何在桌面上显示它呢？上面这个注册表项就是实现的这个功能。聪明的你是否已经发现了这个注册表路径中的Desktop字样呢？那么既然有Desktop，有没有其他的呢？能不能在计算机的其他位置创建这种多功能的&ldquo;快捷方式&rdquo;呢？这个就当作课后作业好了，提示下，只要有NameSpace子项的都可以。</p><p>如果还想在右键中添加其他的程序也只要以此类推就可以了。以上便完成了最简单的一个&ldquo;快捷方式&rdquo;。如果还想创建一个新的&ldquo;快捷方式&rdquo;，注意不要使用同一个CLSID，必须换一个才行。</p><p>接下来我们该稍微扩展下了。右键菜单我们经常用，我们也经常发现右键菜单中常常有很多分栏线把整个右键菜单分成好几栏，如下图中&ldquo;蓝冰工作室FTP&rdquo;项上下的分隔线。那在这里我们如何实现呢？（此功能在XP下无效）</p><p><img onload="ResizeImage(this,530)" src="http://www.fonlan.cn/upload/2009-08-30_223541.png" alt="" title=""/></p><p>其实也很简单，依然以上面的注册表示例为例。例如要在Firefox项的上下添加分栏线，则添加以下注册表项：</p><p><span style="color: rgb(0, 0, 255);">[HKEY_CLASSES_ROOT\CLSID\{7986336A-DFB4-4375-8841-1489E75A7571}\Shell\Firefox]<br />&quot;SeparatorAfter&quot;=dword:00000001&quot;<br />&quot;SeparatorBefore&quot;=dword:00000001&quot;</span></p><p>另外还可以让他在桌面图标下的文字消失，只剩一个图标，如下图中的Chrome图标所示：</p><p><img onload="ResizeImage(this,530)" src="http://www.fonlan.cn/upload/sshot-2009-09-06-[1].png" alt="" title=""/></p><p>其实这也很简单，添加以下项即可：</p><p><span style="color: rgb(0, 0, 255);">[HKEY_CLASSES_ROOT\CLSID\{7986336A-DFB4-4375-8841-1489E75A7571}\Shell\Firefox]<br />&quot;WantsFORDISPLAY&quot;=&quot;&quot;</span></p><p>其实右键菜单中还可以有更多的项的，如剪切、复制、删除等，如下图所示：</p><p><img onload="ResizeImage(this,530)" src="http://www.fonlan.cn/upload/2009-08-30_224100.png" alt="" title=""/></p><p>添加以下注册表项可以实现这个目的：</p><p><span style="color: rgb(0, 0, 255);">[HKEY_CLASSES_ROOT\CLSID\{7986336A-DFB4-4375-8841-1489E75A7571}\ShellFolder]<br />&quot;Attributes&quot;=dword:00000000</span></p><p>其中当Attributes的值为0时没有其他菜单（但是&ldquo;创建快捷方式&rdquo;这项依然存在，我也不知道怎么去掉它，望知道的TX告知。）<br />当Attributes的值为1时右键中有&ldquo;复制&rdquo;项，如上图的左上角所示。<br />当Attributes的值为2时右键中有&ldquo;剪切&rdquo;项，如上图的右上角所示。<br />当Attributes的值为3时右键中同时存在&ldquo;复制&rdquo;和&ldquo;剪切&rdquo;项，如上图左下角所示。<br />如果删除<span style="color: rgb(0, 0, 255);">[HKEY_CLASSES_ROOT\CLSID\{7986336A-DFB4-4375-8841-1489E75A7571}\ShellFolder]</span>这一项的话则出现的是&ldquo;剪切&rdquo;和&ldquo;删除&rdquo;，如上图的右下角所示。</p><p>好了，至此整个多功能&ldquo;快捷方式&rdquo;的创建方法就介绍完毕了。</p><p>点此下载guidgen.exe<br /><a target="_blank" href="http://www.fonlan.cn/Download/guidgen.exe"><img width="185" height="45" alt="点此下载" src="http://www.fonlan.cn/image/edit/downlink.png" /></a></p><p>&nbsp;</p>]]></description><category>教程</category><comments>http://www.fonlan.cn/post/65.html#comment</comments><wfw:comment>http://www.fonlan.cn/</wfw:comment><wfw:commentRss>http://www.fonlan.cn/feed.asp?cmt=65</wfw:commentRss><trackback:ping>http://www.fonlan.cn/cmd.asp?act=tb&amp;id=65&amp;key=80281761</trackback:ping></item><item><title>个人感觉最好的在Vista及以上版本系统中替换宋体的方法</title><author>fonlan@gmail.com (fonlan)</author><link>http://www.fonlan.cn/post/59.html</link><pubDate>Sun, 29 Mar 2009 00:29:25 +0800</pubDate><guid>http://www.fonlan.cn/post/59.html</guid><description><![CDATA[<p>&nbsp;&nbsp; &nbsp;在Vista及以上版本中替换宋体的方法也可谓多样，PE法、批处理法、双系统法&hellip;&hellip;但都很麻烦，而且不一定能正确替换，我今天要介绍的是用一个INF文件来实现宋体替换的方法，这个方法我是偶然在极限上看到的，不过一时大意忘了是哪位XD说的了，实在不好意思了，知道的朋友告诉我哈&hellip;&hellip;</p><p>实际操作很简单，把以下两条虚线之间的内容复制进记事本，然后保存为一个后缀名为inf的文件，比如Simsun.inf：</p><p>----------------------------------------------------------------------------</p><p>[Version]<br />Signature=$Chicago$<br />SetupClass=BASE<br />Compatible=1</p><p>[SourceDisksNames]<br />1=&quot;NewTTF, Setup Disk #1&quot;,,0</p><p>[SourceDisksFiles]<br />SIMSUN.TTC=1</p><p>[DestGrp]<br />SIMSUN.TTC</p><p>[File2Del]<br />TTFCACHE</p><p>[DestinationDirs]<br />DestGrp=20<br />File2Del=10</p><p>[DefaultInstall]<br />DelFiles=File2Del<br />Copyfiles=DestGrp</p><p>----------------------------------------------------------------------------</p><p>然后把要替换的宋体和这个inf文件放在同一文件夹内，在那个inf文件上点鼠标右键，点&ldquo;安装&rdquo;，重启&hellip;&hellip;搞定！简单吧！</p><p><img onload="ResizeImage(this,530)" alt="" title="" src="http://www.fonlan.cn/upload/infReplaceSimsun.png" /></p><p>不知道怎么制作那个inf文件的网友也可以直接下载我做好的版本。</p><p>&nbsp;</p><p><a target="_blank" href="http://www.fonlan.cn/download/Simsun.inf"><img alt="点击下载" width="185" height="45" src="http://www.fonlan.cn/image/edit/downlink.png" /></a></p>]]></description><category>教程</category><comments>http://www.fonlan.cn/post/59.html#comment</comments><wfw:comment>http://www.fonlan.cn/</wfw:comment><wfw:commentRss>http://www.fonlan.cn/feed.asp?cmt=59</wfw:commentRss><trackback:ping>http://www.fonlan.cn/cmd.asp?act=tb&amp;id=59&amp;key=9c4f959f</trackback:ping></item><item><title>便携版Firefox制作全教程（3）——整合</title><author>fonlan@gmail.com (fonlan)</author><link>http://www.fonlan.cn/post/54.html</link><pubDate>Sat, 17 Jan 2009 09:44:30 +0800</pubDate><guid>http://www.fonlan.cn/post/54.html</guid><description><![CDATA[<p>&nbsp;&nbsp;&nbsp;&nbsp;忙了一个学期，好久没更新了，最近我会陆续更新一些内容的。言归正传，今天要说的是便携版Firefox制作教程的最后一篇&mdash;&mdash;整合。至于如何整合，这和你所用的引导器有莫大的关系，引导器不同直接决定了文件布置的结构。我自然还是以我自己做的引导器FirefoxLoader为例介绍。</p><p>&nbsp;&nbsp; &nbsp;FirefoxLoader所要求的文件结构相当简介，仅需要在FirefoxLoader的同级目录下放置一个名为Firefox的文件夹，并在这个文件夹里放置Firefox的程序文件即可，即形成如下图所示结构：<br /><img width="419" height="60" alt="" src="http://www.fonlan.cn/upload/firefoxloader.png" /></p><p>&nbsp;&nbsp; &nbsp;Firefox程序本身需要精简的并不多，记得删除Uninstall文件夹、Update文件夹（每次运行过Firefox后都会出现）和tete009编译版本中的Source文件夹即可。</p><p>&nbsp;&nbsp; &nbsp;Firefox的主页地址修改是在browserconfig.properties这个文件里的，用记事本打开这个文件，把browser.startup.homepage后的网址替换成你要设定的主页地址即可，空白页就设成about:blank。</p><p>&nbsp;&nbsp; &nbsp;然后运行FirefoxLoader，FirefoxLoader会自动在同级目录下新建一个名为profiles的目录，并用默认配置文件启动Firefox。然后你就可以在这里安装扩展、主题并对Firefox的默认参数进行调整了，你可以修改Firefox的选项或者扩展的选项，还可以通过在地址栏输入about：config来进入Firefox的&ldquo;注册表&rdquo;，对Firefox进行更彻底的修改，修改的方法可以参照<a target="_blank" href="http://wiki.sociz.com/@Firefox_%E5%8A%A0%E9%80%9F%E6%8A%80%E5%B7%A7">这里</a>。当然，这里的技巧也不是都要用，如何取舍还得看你经验的摸索。所有修改过的参数会在profiles文件夹下的prefs.js文件中体现出来，你可以用记事本打开并编辑它，这和你在Firefox程序里修改选项或者about：config是等效的。</p><p>&nbsp;&nbsp; &nbsp;如果有人分析过我做的便携版Firefox会发现我的默认prefs.js中并没有太多的优化参数，难道我没有做任何优化？这当然不可能。我只是把优化参数变成了Firefox的默认参数而已。Firefox的默认参数都保存在Firefox目录下的defaults和greprefs目录下的js文件中，而主要则保存在Firefox\defaults\pref目录下的firefox.js和Firefox\greprefs目录下的all.js这两个文件中，你可以把你在prefs.js中看到的修改项在这两个文件中查找，如果找到一样的选项的话直接把他们的值改为和prefs.js中的值一样即可，当然，查找的时候得把前面的&ldquo;user_&rdquo;去掉。</p><p>&nbsp;&nbsp; &nbsp;Firefox还可以通过修改profiles\Chrome文件夹下的<a target="_blank" href="http://wiki.sociz.com/@Userchrome.css">Userchrome.css</a>和<a target="_blank" href="http://wiki.sociz.com/@UserContent.css">UserContent.css</a>对界面的显示做一些控制。如果profiles\Chrome文件夹下只有UserChrome-example.css和UserContent-Example.css两个文件则把他们改名为UserChrome.css和UserContent.css后再进行修改。</p><p>&nbsp;&nbsp; &nbsp;当你要修改的全部改好后，就把profiles目录下的extensions目录下的所有文件夹都复制到Firefox目录下的extensions文件夹中。再把profiles文件夹下除adblockplus（如果有装AdBlockPlus的话）、chrome两个文件夹及prefs.js、firegestures.sqlite（如果有装FireGestures）两个文件之外的其他文件删除，把Firefox\defaults\profile目录下的所有文件和文件夹都删除，把profiles文件夹中剩下的两个文件夹和两个文件复制到Firefox\defaults\profile目录下，最后把多余的profiles目录删除即可。</p><p>&nbsp;&nbsp; &nbsp;至此，一个便携版Firefox就诞生了&hellip;&hellip;</p>]]></description><category>教程</category><comments>http://www.fonlan.cn/post/54.html#comment</comments><wfw:comment>http://www.fonlan.cn/</wfw:comment><wfw:commentRss>http://www.fonlan.cn/feed.asp?cmt=54</wfw:commentRss><trackback:ping>http://www.fonlan.cn/cmd.asp?act=tb&amp;id=54&amp;key=6b57ea87</trackback:ping></item><item><title>便携版Firefox制作全教程（2）——扩展和插件</title><author>fonlan@gmail.com (fonlan)</author><link>http://www.fonlan.cn/post/53.html</link><pubDate>Mon, 22 Sep 2008 15:53:56 +0800</pubDate><guid>http://www.fonlan.cn/post/53.html</guid><description><![CDATA[<p>&nbsp;&nbsp;&nbsp;&nbsp;<a target="_blank" href="http://www.fonlan.cn/post/52.html">第一篇教程</a>我已经介绍了Firefox主程序的选择和处理，这次我要讲的是Firefox的扩展和插件。扩展和插件是不一样的，扩展是指Adblock Plus、Download Statusbar等用于提升用户体验的组件；而插件则是Flash、WMP等能扩充Firefox的底层功能的组件。</p><p>&nbsp;&nbsp;&nbsp;&nbsp;在便携版Firefox的制作中，扩展和插件的集成是相当重要的一个环节，甚至有些做得粗糙的便携版Firefox就是原版集成几个扩展及插件而已。我有时候也会下载别人做的便携版Firefox，但几乎每次总能看到塞得满满的扩展文件夹和插件文件夹，每次看到这里我就会直接把那个版本删了，因为从这儿我就可以看出这个版本根本没有任何借鉴价值，这个便携版的作者也没有用心的在做Firefox。Firefox的扩展和插件是很多的，这是他的优势，但也会带来一些负面的影响。安装过多的扩展和插件会影响到程序的启动和运行速度，增加资源占用。碰到制作不规范的甚至会导致Firefox的崩溃，所以对于扩展和插件我们应抱着能不装则不装的心态来对待。</p><p>&nbsp;&nbsp;&nbsp;&nbsp;以现在流行的Firefox3为例，就是有很多人喜欢装Fasterfox这个扩展，这个扩展官方就没有提供对Firefox3的支持，但很多网友就是修改也要让这个扩展强行支持Firefox3。其实在Mozilla的论坛上早有讨论了，这个扩展在有限提升性能的同时会带来不少兼容性问题，在Firefox2下尚是如此，Firefox3下其实这个扩展根本发挥不了任何作用，他也只是修改了Firefox的配置文件中的几个参数而已，那么我们还不如手工修改来的好。还有迅雷官方的扩展，那个扩展是为Firefox2准备的，经过修改虽然能在Firefox3下使用但会造成一些菜单项的失效。尽管有网友的修改版解决了这些问题，但安装一个通用的FlashGot不是更好吗？有人说用FlashGot右键没有下载项，不方便。那么，看图：<br /><img title="" alt="" onload="ResizeImage(this,530)" src="../../../upload/FlashgotThunder.png" /><br />&nbsp;&nbsp;&nbsp;&nbsp;在FlashGot选项里勾上&ldquo;在右键菜单中显示&rdquo;就可以了。而且FlashGot不仅支持迅雷，还支持快车等多数主流下载软件，最新版本还加上了媒体探测功能，我实在想不出使用迅雷官方扩展的理由。</p><p>&nbsp;&nbsp;&nbsp;&nbsp;Firefox的版本更新永远是走在扩展的版本更新之前的，下面我来说下让原本不支持新版本Firefox的扩展支持新版本的方法，总体来说有三种：<br />1、安装Nightly Tester Tools这个扩展，安装了这个扩展后就能安装原本不支持的扩展了。<br /><br />2、在地址栏输入about:config，运行后新建两个布尔值，名字分别为extensions.checkCompatibility和extensions.checkUpdateSecurity，值都为false。<img title="" alt="" onload="ResizeImage(this,530)" src="../../../upload/aboutconfigextension.png" /><br /><br />3、第三种方法是直接修改扩展，也是我最推崇的一种方法。把下载下来的扩展的后缀名从xpi改到zip，然后用任意解压软件解压到一个文件夹里，用记事本打开install.rdf，把maxVersion后的版本号改成3.1.*。就是说支持到Firefox3.1的所有版本，当然，也可以设的更大一点。然后选定所有解压出来的文件和文件夹，压缩成一个zip文件，最后把后缀从zip改到xpi，再安装就可以了。<br /><img title="" alt="" onload="ResizeImage(this,530)" src="http://www.fonlan.cn/upload/modifyextension.png" /></p><p>&nbsp;&nbsp;&nbsp;&nbsp;再来说下扩展的精简：一般一个扩展下载下来里面都包含多国语言的，而我们最多用到英简繁三种，所以我们也只需要保留这三种即可。<br />1、把下载下来的扩展的后缀从xpi改为zip，然后用压缩软件解压到一个文件夹，诸如扩展的文件名是download_statusbar-0.9.6.3-fx，则解压到名为download_statusbar-0.9.6.3-fx的文件夹中，打开这个文件夹，找到chrome.manifest的文件，用记事本打开这个文件，找到<strong>locale</strong>开头的几行，然后把除en-US、zh-CN和zh-TW的其他行删掉。<br /><br />2、进入名为chrome的文件夹，这时候有两种情况：</p><p>（1）、进入后全是文件夹，则进入名为local的文件夹，删除除en-US、zh-CN和zh-TW的其他文件夹。</p><p>（2）、进入后只有一个后缀为jar的文件，则把这个文件的后缀改成zip，然后解压到一个文件夹，进入这个文件夹，一般见到的是这样的视图：<br /><img title="" alt="" onload="ResizeImage(this,530)" src="../../../upload/2008-09-22_174353.png" /><br />进入local文件夹，删除除en-US、zh-CN和zh-TW的其他文件夹。然后把以上几个文件夹选定后压缩为一个zip文件，再把后缀改成jar。确保新生成的jar文件和原始jar文件文件名一样，然后用新的jar文件替换旧的jar文件，再把由原始文件解压而得的文件夹删除即可。<br /><br />3、选定由扩展解压后的目录中的所有文件，压缩为一个zip包，最后把后缀的zip改为xpi即可，所得即为一个精简版的扩展。</p><p>还有问题更多的插件，绝大多数便携版或者绿色版的Firefox中都会集成一大堆的插件，什么Java、QuickTime、SilverLight、 Office03/07和PDF等等等等，但他们真的测试过这些插件吗？他们知道这些插件在什么情况下能工作吗？<br /><br />Java，其实根本没必要安装插件，你系 统里装了Java RunTime的话Firefox自己会找到相应的插件，自己装的甚至反而可能出现版本对不上的情况，没装的话就算你装了插件也没用，只是一个占了茅坑不 拉SHI的家伙；<br /><br />QuickTime的插件很多，有6～7个，但绝大多数需要系统里装有QuickTime才会生效，而且绝大多数插件的功能是在线播放一 些格式比较特殊的音视频，诸如3gp、mov等，还会强制接管mp3等文件的默认操作（点个MP3下载链接他不下载反而在线播放 了）；<br /><br />SilverLight，至少我测试在最新版的Firefox中还无效，而且网络上用到SilverLight的机会实在太少了；<br /><br />Office系 列，系统里有没有装MS的Office我们先不论，但你知道用户装的是03还是07吗（03和07的插件不一样的）？你有必要在Firefox中打开一个 Word文档或者PPT文档吗？<br /><br />PDF，集成的人也很多，但你知道这个插件需要系统里安装了Adobe Reader才有效吗？这个几百兆的庞然大物我可不想装。<br /><br />RealPlayer，这个装的人也很多，不过它和Java一样，只要系统里装了Real解码器，Firefox就能自动找到相应的插件，否则装了也没用。</p><p>&nbsp;&nbsp;&nbsp;&nbsp;所以，就我个人感觉，插件我们只需要安装Flash：NPSWF32.dll、ShockWave：np32dsw.dll（可选）、WindowsMediaPlayer：npdsplay.dll、QuickTime插件中的npqtplugin6.dll（用来支持JPEG2000图片格式，无须安装QuickTime，可选）、WPF：NPWPF.dll（用于支持微软最新的WPF图形格式，可选）。</p><p>&nbsp;&nbsp;&nbsp;&nbsp;还是那句话，扩展和插件宜精不宜多，如果制作的精简版是要发布给网友分享的，那更应该注意每个扩展及插件的测试。</p>]]></description><category>教程</category><comments>http://www.fonlan.cn/post/53.html#comment</comments><wfw:comment>http://www.fonlan.cn/</wfw:comment><wfw:commentRss>http://www.fonlan.cn/feed.asp?cmt=53</wfw:commentRss><trackback:ping>http://www.fonlan.cn/cmd.asp?act=tb&amp;id=53&amp;key=cfb9ad84</trackback:ping></item><item><title>便携版Firefox制作全教程（1）——Firefox主程序文件的选择</title><author>fonlan@gmail.com (fonlan)</author><link>http://www.fonlan.cn/post/52.html</link><pubDate>Fri, 19 Sep 2008 22:21:16 +0800</pubDate><guid>http://www.fonlan.cn/post/52.html</guid><description><![CDATA[<p>接下来的几天里，我会陆续放出我的便携版Firefox制作方法全教程，这个教程也是我制作便携版Firefox至今的心得和体会，尽力让大家在看完教程后都能制作属于自己的便携版Firefox。今天先从制作便携版Firefox的第一步&mdash;&mdash;选择合适的Firefox主程序开始。</p><p>Firefox是一个鼎鼎大名的开源软件，正由于它的名气和开源使得Firefox存在许多非官方的版本，算上官方的版本，这种种版本的选择就成了一个问题。</p><p>常见的<a target="_blank" href="http://mozilla.sociz.com/viewthread.php?tid=9638&amp;extra=page%3D1">第三方编译版Firefox大家可以点击这里查看</a>。除去官方原版，国内使用的最多的第三方编译版本就是<a target="_blank" href="http://www1.plala.or.jp/tete009/en-US/software.html">tete009</a>和<a target="_blank" href="http://marilab.hp.infoseek.co.jp/buildfx/index_en.html">绫川</a>编译的版本（注意，绫川的网站需使用代理才能访问）。这三个版本在本质上并没有太大的区别，简单的说：</p><p>官方的版本注重的是稳定性和兼容性；</p><p>而tete009则比较注重技术的创新，他的版本在图形绘制上略有优势，tete009的Firefox默认只对SSE指令集做了优化，如果想对SSE2指令集也进行优化可下载tete009主页上的<a target="_blank" href="http://www1.plala.or.jp/tete009/en-US/software.html#TMOZDLL_RELEASE">支持SSE2指令集优化的tmemutil.dll</a>，替换tete009的Firefox中的默认文件即可，不过实际性能的提升相当有限；</p><p>绫川的版本最近在天朝蔓延的速度很快，虽然我也比较喜欢他的版本，但实际上他的版本是比较偏激的，他的版本里也有用到tete009的部分优化技术，并且非常追求新的编译器，一直使用VS2008、VS2008 SP1的，所以他的版本默认是需要安装VC++2008或者VC++2008SP1运行库才能正常运行的，当然，为了制作便携版程序，我们也可以直接集成所需要的运行库，这在后面会有提到。</p><p>就JavaScript性能来说是绫川的最好，tete009的次之，官方的最差；但自从Firefox3.0Beta5时JavaScript性能大幅度提升后官方的版本性能比也不是太差，所以这三个版本在得分上的差距换算到实际使用恐怕只有几十毫秒的差距。当然，官方的3.1并打开TraceMonkey除外，这个性能提升太大了！综合考虑性能、兼容性等各个方面，我更倾向于使用tete009的版本。至于你用什么版本，还得由你自己的使用环境说决定。</p><p>下面我来说说上面提到的三个版本制作便携版程序所需要的一些基本处理：</p><p>便携版程序需要的是程序体积尽量小巧，以减少程序运行时对宿主设备的读写，对于传输速度普遍较慢的便携存储设备比较有利，所以程序的精简的必须的。</p><p>获得官方版本最简单的方法就是下载网上发布的最新简体中文版Firefox，在本机上安装，然后提取出安装文件夹下的所有文件；或者也可以直接到<a target="_blank" href="http://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/">Mozilla FTP</a>下载最新的Nightly版，解压即可获得Firefox的主程序。而精简也主要集中在一些无用的文本类文件、字典文件等。一般根目录下只需保留application.ini、blocklist.xml、browserconfig.properties和platform.ini四个文本文件即可，其余文本类型的文件均可删除（注意：名为.autoreg的文件不要删）。Uninstall文件夹也没有用，可以删除。</p><p>tete009的版本下载后除了和官方原版一样的处理之外，另外还可以把除firefox.exe之外的所有exe程序删除，另外还有一个名为Source的文件夹，是tete009的源代码，也可以删除。</p><p>绫川的版本相对干净，只需要和官方版本一样处理即可，只不过制作便携版我们还需要集成绫川版所需要的运行库，在安装了VC++2008或者vc++2008sp1的机子上提取出vcomp90.dll和Microsoft.VC90.OpenMP.manifest两个文件，放在firefox.exe的同一目录下即可。</p><p>另外tete009和绫川的版本下载后默认都只有英语一种语言，所以我们需要加入简体中文语言文件，我们可以从官方版本的chrome文件夹里提取出zh-CN.jar和zh-CN.manifest两个简体中文语言文件，然后放到tete009和绫川的同一文件夹下；或者也可以从<a target="_blank" href="ftp://ftp.mozilla.org/pub/mozilla.org/firefox/nightly/3.0.2-candidates/build6/windows-xpi/">Mozilla FTP</a>下载对应版本的语言插件，然后用7z或者WinRAR解压这个插件，即可获得zh-CN.jar和zh-CN.manifest两个语言文件。</p><p>当然，你也可以用Restorator等资源编辑工具把tete009或者绫川的Firefox.exe主程序的图标改成Firefox正式版的图标，这个怎么操作这里就不多讲了。</p><p>到这里，Firefox主程序的处理就差不多了。</p>]]></description><category>教程</category><comments>http://www.fonlan.cn/post/52.html#comment</comments><wfw:comment>http://www.fonlan.cn/</wfw:comment><wfw:commentRss>http://www.fonlan.cn/feed.asp?cmt=52</wfw:commentRss><trackback:ping>http://www.fonlan.cn/cmd.asp?act=tb&amp;id=52&amp;key=512ac98c</trackback:ping></item><item><title>让Gmail成为Firefox中mailto:链接的默认应用程序</title><author>fonlan@gmail.com (fonlan)</author><link>http://www.fonlan.cn/post/19.html</link><pubDate>Sun, 27 Jul 2008 02:01:23 +0800</pubDate><guid>http://www.fonlan.cn/post/19.html</guid><description><![CDATA[<p>用Gmail也好几年了，但我一直都不敢说他有多强大多强大，因为Google的创意实在是无限啊，仔细推敲，他总能给你想不到的惊喜。</p><p>在Firefox中如果把Firefox设为了默认浏览器则点击mailto:的链接的话默认会打开邮件客户端，如果没有注册为默认浏览器点击 mailto:链接则默认会打开IE，而不会打开邮件客户端，如果是绿色便携版的话则点击没有任何效果。但如果你使用的是Gmail的话这一切将变得非常 简单。原文地址是：<a href="http://lifehacker.com/392287/set-firefox-3-to-launch-gmail-for-mailto-links" target="_blank">http://lifehacker.com/392287/set-firefox-3-to-launch-gmail-for-mailto-links</a><br /><br />以下在Firefox3.0RC1便携版中测试通过。<br /><br />1、在地址栏输入about:config，按两次回车，打开about:config界面（相当于Windows的注册表）。<br />2、把键值gecko.handlerService.allowRegisterFromDifferentHost设置为true，默认是false（这个修改会引起一个安全问题，我们可以在设置都完成后改回默认）。<br /><img onload="ResizeImage(this,530)" src="http://www.fonlan.cn/upload/Gmail&amp;Firefox1.png" alt="" title=""/><br />3、确认network.protocol-handler.external.mail键值为true（默认）。<br />4、在地址栏打开以下内容：<br />如果是Gmail用户打开<br />javascript:window.navigator.registerProtocolHandler(&quot;mailto&quot;,&quot;https://mail.google.com/mail/?extsrc=mailto&amp;url=%s&quot;,&quot;GMail&quot;)<br />如果是Goolge app用户，改为打开以下内容，并把example.com 换成你的域名<br />javascript:window.navigator.registerProtocolHandler(&quot;mailto&quot;,&quot;https://mail.google.com/a/example.com/mail/?extsrc=mailto&amp;url=%s&quot;,&quot;GMail&quot;)<br />5、输入并运行上面的脚本之后，会弹出对话框（类似保存密码那个样子），点确定。然后点击一个mailto:链接，会弹出添加应用程序的对话框，选gmail并勾选&ldquo;记住我的选择&rdquo;。<br /><img onload="ResizeImage(this,530)" src="http://www.fonlan.cn/upload/Gmail&amp;Firefox2.png" alt="" title=""/><br /><img onload="ResizeImage(this,530)" src="http://www.fonlan.cn/upload/Gmail&amp;Firefox3.png" alt="" title=""/><br />（看到上面的图没？使用Yahoo Mail的XD也可以用哦，而且貌似Firefox默认就集成了Yahoo Mail，不需要这繁琐的添加过程了。）<br />6、最后把键值gecko.handlerService.allowRegisterFromDifferentHost改回默认的false即可。</p><p>现在你在Firefox里点击mailto:链接都会直接打开网页版的Gmail并自动帮你输入目标邮箱地址了哦，方便吧。当然前提是你的Firefox 里保存了自动登陆Gmail的Cookie信息哦。那么怎么去除这个功能呢？在Firefox的&ldquo;选项&rdquo;里，&ldquo;应用程序&rdquo;选项卡，&ldquo;mailto:&rdquo;选 项，选查看应用程序详细信息，删除即可。<br /><br />最后提供一个mailto:链接，方便大家测试用：<br /><a href="mailto:fonlan@gmail.com" target="_blank">大家可以通过点击这段话发邮件给我哦！</a></p><p>&nbsp;</p>]]></description><category>教程</category><comments>http://www.fonlan.cn/post/19.html#comment</comments><wfw:comment>http://www.fonlan.cn/</wfw:comment><wfw:commentRss>http://www.fonlan.cn/feed.asp?cmt=19</wfw:commentRss><trackback:ping>http://www.fonlan.cn/cmd.asp?act=tb&amp;id=19&amp;key=f125e970</trackback:ping></item><item><title>软件限制策略的拓展和补遗</title><author>fonlan@gmail.com (fonlan)</author><link>http://www.fonlan.cn/post/12.html</link><pubDate>Sun, 27 Jul 2008 00:03:42 +0800</pubDate><guid>http://www.fonlan.cn/post/12.html</guid><description><![CDATA[<p>在我的<a href="http://fonlan.cn/post/2.html" target="_blank">《Windows安全策略&mdash;&mdash;系统自带的&ldquo;软件&rdquo;防火墙》</a>一文中我已经详细阐述WindowsXP内置的软件限制策略的基本使用方法，这里我再对它进行一些补充和修正。软件限制策略XP和2003通用，以下以XP为例进行说明。<br />WindowsXP的软件限制策略默认有两个，如图1所示：<br /><img onload="ResizeImage(this,530)" src="http://www.fonlan.cn/upload/2008-07-27_000517.png" alt="" title=""/><br />图1</p><p>而事实上，微软还隐藏了一个安全级别&mdash;&mdash;基本用户。什么是基本用户呢？它是一种介于系统管理员和受限帐户之间的用户权限，类似于Vista中的标准用户，拥 有大部分权限，可以读写注册表的HKEY_CURRENT_USER字段，但却无法修改HKEY_LOCAL_MACHINE字段。微软官方的解释是&ldquo;允 许程序访问一般用户可以访问的资源，但没有管理员或 Power User 的访问权。&rdquo;</p><p>启用这个&ldquo;基本用户&rdquo;的方法也很简单，打开注册表编辑 器，定位到HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Safer\ CodeIdentifiers，新建一个名为Levels的DWORD值，数值为十进制的131072。关闭注册表编辑器，重新打开本地安全设置就能看 到新添加的&ldquo;基本用户&rdquo;安全级别了，如图2所示：<br /><img onload="ResizeImage(this,530)" src="http://www.fonlan.cn/upload/2008-07-27_000611.png" alt="" title=""/><br />图2</p><p>那 么这个&ldquo;基本用户&rdquo;有什么作用呢？正如它所拥有的权限是介于管理员与受限用户之间的，我们可以用这个安全级别来加载IE浏览器，以杜绝恶意网站通过IE强 行修改系统设置，因为即使此时用户为管理员权限，但IE依然工作在&ldquo;基本用户&rdquo;权限下。添加规则的方法还是和以前一样，在其他规则上点击鼠标右键，选择选 择&ldquo;新路径规则&rdquo;，在打开的窗口中的路径栏里输入&ldquo;%ProgramFiles%\Internet Explorer\iexplore.exe&rdquo;（不包括引号），然后在安全级别中选择&ldquo;基本用户&rdquo;，如图3所示：<br /><img onload="ResizeImage(this,530)" src="http://www.fonlan.cn/upload/2008-07-27_000717.png" alt="" title=""/><br />图3</p><p>点击&ldquo;确定&rdquo;保存，打开开始菜单，运行，输入gpupdate /force，按下回车键运行等待策略刷新完毕就可以了，下次不论以何种方式打开IE浏览器它都工作在&ldquo;基本用户&rdquo;下，当然上网就安全多了。</p><p>用&ldquo;基 本用户&rdquo;方式启动IE浏览器和使用受限帐户启动IE浏览器的区别就在于受限帐户无法访问收藏夹等用户的个性化设置，而&ldquo;基本用户&rdquo;则没有这些限制，是在保 证用户使用舒适性的前提下提供一定的安全防护，对于普通家庭用户而言，无疑&ldquo;基本用户&rdquo;更有现实意义。如果你使用的是其他的第三方浏览器，也只要如法炮制 一一把浏览器的主程序加入软件限制策略即可。</p><p>还有系统的临时文件夹也是病毒和木马的温床，但若是霸道得地直接禁止运行临时文件夹中的程序，将会导致大量的安装程序或者使用自解压方式制作的绿色程序无 法正常运行，所以我们可以对临时文件夹及其子文件夹也使用&ldquo;基本用户&rdquo;安全等级，这样就可以保证大多数的程序能正常运行，而需要修改系统设置的病毒却无法 正常工作。要实现这个目的我们需要添加两条策略：<br /><br />%USERPROFILE%\Local Settings\Temp\*.*    &nbsp;&nbsp;     基本用户<br />%USERPROFILE%\Local Settings\Temp\**\*.*    基本用户</p><p>为什么会有两条策略？为什么不直接用%Temp%环境变量？这些我们将在下文慢慢揭晓。但要注意的是如果把临时文件夹设为基本用户权限可能会引起一定的软件兼容性问题，大家要权衡利弊后再确定是否添加此规则。</p><p>在<a href="http://fonlan.cn/post/2.html" target="_blank">《Windows安全策略&mdash;&mdash;系统自带的&ldquo;软件&rdquo;防火墙》</a>一文中提到过软件限制策略支持系统环境变量，不过也有例外，那就是他不支持二次链接，也就是像 %Temp%这种环境变量。%Temp%的变量地址在系统中是这样定义的：%USERPROFILE%\Local Settings\Temp。可以看到这里%USERPROFILE%本身就已经是环境变量，所以若是在软件限制策略中添加了使用%Temp%的策略，这 条策略将不会生效，这就是上面不使用%Temp%的缘故。但我们可以直接用%USERPROFILE%\Local Settings\Temp来取代%Temp%这个变量，效果是一样的。</p><p>软件限制策略支持通配符，即？和*，分别用来匹配任意单个字符和任意个字符。实际上，软件限制策略还支持**这个通配符，表示任意层的子文件夹，但不包括 父目录本身。如上文中的%USERPROFILE%\Local Settings\Temp\**\*.*这条规则就使用了**这个通配符，表示Temp目录下任意层的子文件夹，但不包括Temp目录本身，所以我们还 需要%USERPROFILE%\Local Settings\Temp\*.*这条命令来限制Temp目录下的程序。</p><p>修改了软件限制策略后，在运行对话框或者命令提示符中运行gpupdate /force命令刷新策略是使策略立即生效的最快方法。但有部分朋友在运行这条命令时发现刷新策略的对话框一闪而过，很快就结束了，而且策略也并没有生 效。这时，我们可以通过以下方法解决：打开本地安全设置，切换到软件限制策略的安全级别页，即图1所示界面，在&ldquo;不允许的&rdquo;上点击鼠标右键，&ldquo;设置为默 认&rdquo;，在弹出的警告对话框中点&ldquo;确定&rdquo;，然后再如法炮制把默认安全级别改回&ldquo;不受限的&rdquo;，这时再运行gpupdate /force就正常了。刷新策略时系统资源占用率会暂时升高，持续时间一般在几秒钟，由策略的多少而定，正常刷新后策略便真正的生效了。</p><p>软件限制策略现在已经可以说已经得到很好的推广了，但令人痛心的是不少病毒木马也盯上这里了，所以我们还需要对软件限制策略加以保护才行。在命令提示符中 运行&ldquo;echo Y|cacls &quot;%windir%\system32\GroupPolicy\Machine\Registry.pol&quot; /C /P everyone:R&rdquo;（不包括引号）命令对保存软件限制策略的Registry.pol文件设为只读权限，另外还要在注册表中将 HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Safer项的权限也设为只读。这样 软件限制策略就安全的多了。不过要注意的是进行了这两个操作后每次开机都会在系统日志里生产两个日志，表示无法访问Registry.pol文件和注册表 HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Safer项，这是因为系统在启动时 会默认刷新软件限制策略，所以会出现这两个错误。但并不影响系统的正常运行及软件限制策略的正常工作，所以如果看这些错误日志不爽的朋友还是不要锁定了。我也不建议锁定软件限制策略。</p><p>另外还需要注意的是将IE设为基本用户权限后磁盘使用NTFS文件系统的XD们，用系统自带的下载软件下载时可能会遇到无法将文件保存在某个分区的情况， 这个时候只要在那个无法保存的分区图标上右键属性，选安全选项卡，给Everyone用户赋予完全控制权限即可。</p><p>尽情享受微软送给你的这款免费&ldquo;防火墙&rdquo;吧！<br /><br />纳米盘下载：<br /><a href="http://www.namipan.com/d/f503d555cc2e8c30bb677e4bdcee6569801510dd10890300" target="_blank"><img height="45" width="185" alt="" src="http://www.fonlan.cn/image/edit/downlink.png" /></a><br />BRSBOX下载：<br /><a href="http://www.brsbox.com/filebox/down/fc/1c9c08566c1376815ed559743d534cb0" target="_blank"><img height="45" width="185" alt="" src="http://www.fonlan.cn/image/edit/downlink.png" /></a></p><p>&nbsp;</p>]]></description><category>教程</category><comments>http://www.fonlan.cn/post/12.html#comment</comments><wfw:comment>http://www.fonlan.cn/</wfw:comment><wfw:commentRss>http://www.fonlan.cn/feed.asp?cmt=12</wfw:commentRss><trackback:ping>http://www.fonlan.cn/cmd.asp?act=tb&amp;id=12&amp;key=8352e0f7</trackback:ping></item><item><title>Windows安全策略——系统自带的“软件”防火墙</title><author>fonlan@gmail.com (fonlan)</author><link>http://www.fonlan.cn/post/2.html</link><pubDate>Sat, 26 Jul 2008 13:51:07 +0800</pubDate><guid>http://www.fonlan.cn/post/2.html</guid><description><![CDATA[<p>在互联网越来越普及的今天，互联网安全问题日益严重，木马病毒横行网络。大多数人会选择安装杀毒软件和防火墙，不过杀毒软件对病毒反应的滞后性使得他心有 余而力不足，只有在病毒已经造成破坏后才能被发现并查杀。在这种情况下，HIPS（主动防御系统）软件越来越流行，依靠设定各种各样的规则来限制病毒木马 的运行和传播，由于HIPS是基于行为分析的，这使得它对未知病毒依然有效，不过软件兼容性问题也比普通的杀毒软件要严峻的多。</p><p>网络上有一种人，他们不装任何杀毒软件和防火墙，自由奔走在互联网上，称之为&ldquo;裸奔&rdquo;族。不过他们也分许多不同的种类，有的是电脑不设任何防护，也不放任 何重要资料，一旦中毒就重装系统；而另一种则是依托Windows系统本身的安全机制来抵御病毒的入侵，显然这种方法要可靠的多。</p><p>其实大多数人都忽略了Windows系统本身的功能，认为Windows弱不禁风。其实只要设置好，Windows就是非常强大的安全防护软件。这篇文章 的主角就是WindowsXP Pro里自带的安全策略功能。打开安全策略很简单，直接双击控制面板管理工具里的本地安全策略即可，这里我们重点讲其中的软件限制策略。</p><p>正如其名，这里可以限制软件的运行，至于如何限制，那就要看你的策略怎么定了。如果以前未设置过安全策略，那么在软件限制策略上右键新建策略后会出现下级菜单：<br /><img onload="ResizeImage(this,530)" src="http://www.fonlan.cn/upload/2008-07-26_144328.png" alt="" title=""/><br />其他地方我们都不用管，其它规则才是由我们发挥的地方，这里规则制定的好坏直接关系到你的电脑的安全程度。点击其他策略，我们可以看到微软已经帮我们预设了4条规则（如下图）<br /><img onload="ResizeImage(this,530)" src="http://www.fonlan.cn/upload/2008-07-26_144353.png" alt="" title=""/> <br />这4条规则是用来保证Windows运行所必须的程序不会被禁用而设的，如果你确定你的规则没有问题，这四条规则删掉也没有问题。接下去在其他规则上右键， <br /><img onload="ResizeImage(this,530)" src="http://www.fonlan.cn/upload/2008-07-26_144408.png" alt="" title=""/> <br />在弹出的右键菜单里，我们主要用到的是&ldquo;新路径规则&rdquo;，偶尔也可以用&ldquo;新散列规则&rdquo;，具体有何区别将在下面分别讲述。现在我们点击&ldquo;新路径规则&rdquo;，出现如下窗口： <br /><img onload="ResizeImage(this,530)" src="http://www.fonlan.cn/upload/2008-07-26_144421.png" alt="" title=""/> <br />我们主要在路径那一栏里做文章。 这里允许使用通配符，常见的有&ldquo;*&rdquo;和&ldquo;？&rdquo;，*表示任意个字符，？表示一个字符。也允许使用环境变量，常见的文件夹环境变量有：<br />（以下以XP默认装在C盘例举）<br />%ALLUSERSPROFILE% 表示 C:\Documents and Settings\All Users<br />%APPDATA% 表示 C:\Documents and Settings\当前用户名\Application Data<br />%SYSTEMDRIVE% 表示 C:<br />%SYSTEMROOT% 和 %WINDIR% 表示 C:\WINDOWS<br />%USERPROFILE% 表示 C:\Documents and Settings\当前用户名<br />%ProgramFiles% 表示 C:\Program Files</p><p>在定义规则的时候我们可以使用绝对路径，也可以用通配符或者环境变量，甚至可以直接使用要禁止运行的程序的程序名。而这里就涉及到一个优先级的问题了。按微软的规定：<br />绝对路径&gt;使用通配符的路径&gt;文件名。</p><p>下面我通过实例来讲规则的建立：</p><p>实例1：进程仿冒是木马病毒用的最多的一个手段，比如病毒文件名为svchost.exe，而这个病毒文件在windows文件夹下或其他任意文件夹下 （真正的svchost.exe文件在system32文件夹下），病毒运行时XP默认的任务管理器里只会显示进程名为svchost.exe，而XP本 来就有很多个svchost.exe进程，这就很好地达到了欺骗用户的目的。普通杀毒软件还是得依托单一的病毒库，一旦换了个新病毒用同样的手法他就不认 了，安全性很差。而用本地安全策略可以很简单的永久免疫这种方式的病毒，我们建立两条规则：<br />svchost.exe 不允许的<br />%windir%\system32\svchost.exe 不受限的<br />由于优先级的关系，第二条使用绝对路径的规则优先级高于第一条基于文件名的路径，也就是说system32文件夹下的svchost.exe是允许运行 的，而其他任意文件夹的名字为svchost.exe的程序都无法运行。由于svchost.exe是系统文件，病毒不可能替换它。可以看到，这两条规则 完美地解决了这个问题，以后只要是使用相同手法的病毒或木马都无法运行，达到了防毒的效果。</p><p>实例2：很多病毒木马为逃过用户的追杀都会藏在很隐蔽的地方，比如回收站、System Volume Information（系统还原文件夹）、C:\WINDOWS\system32\Drivers文件夹、C:\WINDOWS\system文件夹 等等，并且加上隐藏属性使用户不易发觉。而事实上，这些文件夹正常情况下是没有任何可执行程序的，所以我们可以建立以下规则：<br />?:\Recycled\*.* 不允许的<br />?:\System Volume Information\*.* 不允许的<br />%windir%\system32\Drivers\*.* 不允许的<br />%windir%\system\*.* 不允许的<br />通过以上4条规则就能屏蔽掉这4个文件夹下任意可执行文件的运行，再一次完美地解决了这一类型的病毒和木马的防御。放心，用*.*这种格式并不会屏蔽掉txt或者jpg之类的其他非可执行程序。</p><p>实例3：用双扩展名迷惑用户的病毒也不在少数。比如MM.jpg.exe，免费得QQ会员的方法.txt.exe等等，然后图标改成前一个扩展名的图标， 由于大多数用户都是XP的默认设置，隐藏已知扩展名的，所以这些病毒文件是很有诱惑力的，防御他们也不难：<br />*.jpg.exe 不允许的<br />*.txt.exe 不允许的<br />这是两条很容易理解的规则，我就不多做解释了。</p><p>实例四：优盘病毒是现在木马病毒使用的最广的传播方式，一般的方法是安装杀毒软件或专门的防USB病毒工具，那么用系统安全策略是否也能做到免疫呢？答案是不能做到100%防御，但能达到90%以上，规则看下面：<br />（假设你电脑上第一个优盘的盘符是G）<br />G:\*.exe 不允许的<br />G:\*.com 不允许的<br />利用的就是几乎所有的USB病毒都存在在优盘的根目录下，而且是exe后缀的或者com后缀的应用程序，用上面两条规则就能阻止他们的运行。还有一些 USB病毒会隐藏在优盘根目录下的一些隐藏文件夹里，如建立一个叫System Volume Information的文件夹或者Recycled文件夹，而正常情况下优盘是没有系统还原文件夹和回收站的（移动硬盘有时候有），而这个时候，就要靠 实例2的规则来组织了。一般电脑上都不止一个USB接口，所以我们至少要免疫2到3个优盘盘符，将上面的G改成H和I并加入其他规则中即可。</p><p>实例5：文件名伪装虽然是比较老的技术了，不过由于他简单有效的特点现在依然被广泛使用。如有些病毒将自己的文件名改成expl0rer.exe，你敢随 随便便的删除它吗？？不过你可要看仔细哦，不是explorer.exe，注意&ldquo;0&rdquo;和&ldquo;o&rdquo;的差别。相似的还有&ldquo;l&rdquo;和&ldquo;1&rdquo;等。或者文件名为 explorer.com，由于默认不显示后缀，看上去一模一样，你能分辨吗？而且XP默认com的优先级高于exe，所以如果你在运行里输入 explorer回车后先执行的会是explorer.com，即那个病毒程序，恐怖吧。甚至有病毒会用pif后缀，即explorer.pif。pif 和exe、com一样，也是可执行文件，但他的扩展名即使你在文件夹选项里选择了显示文件后缀他都不会显示出来，具有极强的隐蔽性。（但在WinRAR等 第三方浏览器中可被查看到）所以如果你开启了显示后缀而发现某个正常的应用程序依然没有显示后缀的话你就要小心了。废话不多说了，讲规则：<br />expl0rer.exe 不允许的<br />exp1orer.exe 不允许的<br />explorer.exe 不允许的<br />expl0rer.exe 不允许的<br />explorer.com 不允许的<br />*.pif 不允许的<br />以上六条规则就可解决伪装explorer.exe的问题，pif文件普通计算机里一般都用不到，所以也禁用。其他诸如svchost.exe、rundll32.exe、spoolsv.exe等规则也相似，请自行编写。</p><p>路径规则主要就是以上5个大类，下面再大略地介绍一下新散列规则。所谓的散列规则，简单的说就是提取一个文件的特征信息，如版本、Hash等，然后根据这些信息判断是否是同一个文件。如图： <br /><img onload="ResizeImage(this,530)" src="http://www.fonlan.cn/upload/2008-07-26_144547.png" alt="" title=""/> <br />由于识别原理的关系，文件散列识别的优点是不论文件名改为什么，只要是同一个文件都能正确识别。但他的优点也是他的缺点，如果用散列规则来实现以上的功 能，则如果WindowsUpdate更新了被保护的系统文件，文件版本发生了变更，安全策略就会阻止他的运行，造成系统出错。简而言之就是容易带来兼容 性问题。所以一般不使用&ldquo;新散列规则&rdquo;。</p><p>虽然用系统安全策略带来兼容性问题的可能性很小，不过还是有的，那碰到这些问题时我们该怎么办呢?其实系统已经帮我们准备了日志功能。如图，如果由于系统安全策略的原因导致某个程序无法运行，系统会弹出如下对话框： <br /><img onload="ResizeImage(this,530)" src="http://www.fonlan.cn/upload/2008-07-26_144659.png" alt="" title=""/> <br />这个对话框中其实已经告诉我们解决方法了，我们立即去控制面板的管理工具里打开事件查看器，其中的应用程序日志的第一篇一般就是了，双击那个日志，会弹出如下对话框：<br /><img onload="ResizeImage(this,530)" src="http://www.fonlan.cn/upload/2008-07-26_144728.png" alt="" title=""/> <br />这里面的C:\Program Files\*.exe就是出现兼容性问题的那条规则了，不过要注意的是如果你在建立规则时用的是环境变量，如%ProgramFiles%\*.exe 的格式，日志这里会把变量%ProgramFiles%替换为系统的实际路径，一般都是C:\Program Files，所以显示的依然是如上图的对话框。</p><p>知道问题出在哪里了自然就好办了，相应的规则删的删，改的改，这就随你们了。另外再提供我做的规则下载，下载后直接双击即可安装：</p><p>纳米盘下载：<br /><a href="http://www.namipan.com/d/f503d555cc2e8c30bb677e4bdcee6569801510dd10890300" target="_blank"><img height="45" width="185" alt="" src="http://www.fonlan.cn/image/edit/downlink.png" /></a></p><p>BRSBOX下载：<br /><a href="http://www.brsbox.com/filebox/down/fc/1c9c08566c1376815ed559743d534cb0" target="_blank"><img height="45" width="185" alt="" src="http://www.fonlan.cn/image/edit/downlink.png" /></a></p><p>&nbsp;</p>]]></description><category>教程</category><comments>http://www.fonlan.cn/post/2.html#comment</comments><wfw:comment>http://www.fonlan.cn/</wfw:comment><wfw:commentRss>http://www.fonlan.cn/feed.asp?cmt=2</wfw:commentRss><trackback:ping>http://www.fonlan.cn/cmd.asp?act=tb&amp;id=2&amp;key=7542071d</trackback:ping></item></channel></rss>
