Shell's Home

链接上的问题

Apr 7, 2008 - 1 minute read - Comments

贝壳最近在用库上吃了不少苦头,先是crypto++5.52。编译后怎么也链接不上。后来发现需要用/MT参数编译为多线程。后来又在STLport上又吃一次苦头,可见VC2003的默认单线程模式确实不得人心。 下面说一下STL的编译手记。下载STLport,解压。运行vcvars32.bat设置环境变量,去build/lib下面,运行 configuare -c msvc71(如果你是2003,否则按configuare –help察看你的编译器类型)。然后运行nmake -f msvc.mak install。可以看到有两个目录被建立了,bin和lib。把bin的复制到windows/system32下面,把lib的复制到系统目录下面。 安装就OK了。 上述和boost都差不多,然而和boost不一样的是,编写程序的时候,需要手工指定stlport的头文件路径。boost的可以以<>来引入,因此boost的头可以复制到系统里面去。然而stlport的必须以手工方式指定,否则就要覆盖默认的stl 了。

显示自身的代码

Apr 1, 2008 - 1 minute read - Comments

void main(){char* a=“void main(){char* a=%c%s%c;printf (a,34,a,34);}“;printf(a,34,a,34);} 核心是使用printf(a,a)来代换显示,并且用34来规避转换。当然,完整的要带include,稍微有点区别。

None

Mar 27, 2008 - 1 minute read - Comments

说要换blog,但是隔了几个月还是没动,因为贝壳了解到一个悲惨的事实。google提供的blog,是要穿墙的。 这样说的话,我估计这篇blog是没有几个国内用户了。不过华语使用者众,多条路也不错。

一些使用firefox的技巧

Mar 10, 2008 - 1 minute read - Comments

在linux下和windows下共享同样配置/插件。这个很简单,上面的blog中有篇文章说到thnunderbird在双系统下共享同样邮件的问题,firefox也一样解决。能用linux的人不会查不出配置目录位置吧。 节约内存技巧。 firefox虽然号称小巧,然而很多时候我们发现他的内存消耗也非常惊人。在贝壳的机器上,有的时候会高达150M,基本等于普通编辑器/播放器的10倍。事实上,不是firefox浪费内存,而是默认的内存配置是针对”机器上只开firefox”设计的。如果你机器内存小,或者需要同时开其他程序,最好自己配置一下firefox。 首先就是fasterfox,关闭其中的”增强预读”,这东西很消耗内存。然后是内存缓存,调整到32M吧。一般一个网页上所有文件差不多1M-2M,32M够把20个网页的所有内容缓存起来,再多就不大正常了。根据贝壳自己的猜测,渲染动作应当是动态进行的,否则内存根本顶不住长文本的渲染。这样在浏览的时候,从后台抓取内容,动态渲染的速度就非常重要,因此强烈推荐不要小于8M。否则连5个页面的内容都不在内存中命中,还玩个P阿~ 还有渲染中的”启用快速返回”,将内存中的保留页面数调整小,贝壳用的是3。当然,这个只适用于firefox1.5。 其次是session manager,将”撤销关闭”尽量减小。反正贝壳减小到了1个窗口3个页面。这些页面在关闭后还是继续消耗系统的内存,因此越小越好。当然,小到多少是要看你的具体需要了。 最后,少用插件,少启用插件,除非你真的需要。长期不需要的就禁用,或者干脆卸载。 内存回收技巧。 很简单,觉得不够了,关了再开。反正有session manager,正在浏览的网页根本不会有影响。 同时打开大批网页技巧。 最好使用Tree Style Tab,这样方便。另外,如果需要打开一个页面的所有连接,可以这样做。先察看页面信息,选择”链接”->“全部选择”->“复制”,然后开一个文本文件,把内容粘贴进去。可以看到内容其实是一堆的页面链接。当然,如果页面内有js做的链接指向,可以试试用Convert javascript or onclick to normal links这个greasemonkey脚本转换成目标链接。然后,把这个文本文件改名成htm,打开。通常情况下应该是一堆无法点击的文字,不过你可以用Linkify ting来把文字转换成一堆链接。然后……一个个点过去吧。 上面是使用greasemonkey解决的方法,当然,也有更简单的方法。你可以安装flashgot,然后新增一个下载管理器,名字叫做firefox。路径就指向firefox的执行文件路径,参数不用动。平时用你喜欢的管理器,需要打开全部链接的时候,更改为firefox,然后”使用flashgot下载全部链接”。当然,缺点是对付不了js脚本,除非你加载Convert javascript or onclick to normal。 不过鉴于内存状态考虑,建议不要同时打开大量页面。维持在10-20个上下最好。

大灌篮的广告

Mar 6, 2008 - 1 minute read - Comments

昨天看大灌篮,多好看是没看出来,不过广告让我印象深刻。 周杰伦一接手机,HelloMoto。 打开一看,移动飞信。 …………

晒一晒我的firefox

Mar 5, 2008 - 1 minute read - Comments

firefox是很有名的浏览器,以其短小和安全而著称。相信很多朋友喜欢使用firefox,然而你真的会用么? 首先纠正一点,最标准的浏览器虽然不是IE,但是也不是firefox。而是以下三个,Safari(WebKit) / Opera(Presto) / Konqueror(KHTML)。Safari是Mac上的浏览器,Konqueror是Linux上的,Opera则多数用于手机上。Firefox 2.0.0.3 (Gecko 1.8.1.3)稍微差点,Internet Explorer 7.0 (Trident)和Internet Explorer 6.0 (Trident)是最不标准的。具体请看Acid2测试(http://www.osxcn.com/css/the-second-acid-test.html)。当然,也有消息称Firefox和IE已经都通过了测试(http://www.appbeta.com/50226711/ie8afirefoxasafariaoperaecaeacid2ce_133101.php)。 其次,当你用着号称国人精华的XX浏览器的时候。首先请注意一下他是否使用了ie内核。IE有一个非常大的框架,其内核是Trident。所谓的浏览器内核,就是负责将html转换为DOM,然后渲染的组件集。当然,还有一些执行js等等的组件。微软的IE内核一般在mshtml.dll上,如果你有procexp,可以看看所谓的XX浏览器是否用了这个dll。如果用了,没的说,肯定是Trident内核。如果没有么……将mshtml改名转移,直到IE无法正常浏览。然后看看您的XX浏览器怎么样。 Firefox的内核是Gecko,据说将来要使用Cairo。这两种组件……嘿嘿,贝壳都用过。但是firefox最强大的是他的插件组,效果终身难忘,让人不忍舍弃。下面贝壳介绍一下firefox的部分插件,脚本。 /find/,这是个很小巧的插件,可以使得firefox能够以正则表达式在全文进行搜索。普通用户就表想了,这东西可是专业人士的杀手工具。可以做出”搜索全文中的所有电话号码”或者”搜索全文中的所有email”等等强大功能。当然,如果你需要的话。 CustomizeGoogle,GFan一定要用。这个插件可以定制Google,例如可以在其他搜索引擎搜索,剔除赞助商广告,修改搜索的语言(贝壳的firefox就老阿达到英文上去,用这个插件就一切OK)。适用于Google的多个产品,包括gmail,google reader等等。 fasterfox,强力推荐,加速插件。不过通常我都是用来调整性能参数的。自定义设置,不启用增强预读,缓存32M。这个配置对于0.5-1G的本本很有用。 firebug,这东西也就网站开发人员用。不过绝对是杀手阿,可以看到网页的css,javascript,在线调试,察看ajax的网络通讯。通过这个东西,很容易调试多数的网页。 fireshot,推荐看小说的的人用。可以将当前的网页整个导出成png(贝壳注:这不就是Cairo的基础功能么?导出到虚拟interface)。想想你看小说,将当前页面打印到png。不用截屏拼接,嘿嘿。当然,更好的方法是用firebug,直接可以提取内容。不过……看你水准了。 flashgot,强力推荐,用这个东西可以将firefox的下载转到flashget上。当然,也支持迅雷,netant和bitcomet。这个东西弥补了firefox不支持专用下载软件的尴尬。当然,也有人喜欢都在firefox里面做。这个就如人饮水拉。 gladder,用于爬GFW看Wikipedia的东西。如果听不懂,我不再解释。 gmark,推荐多个电脑的人用,可以在各个地方用google bookmark,就好像用自己的bookmark一样,方便统一bookmark。如果你不喜欢在线bookmark(我觉得没有必要,用浏览器必定在线,除非google故障离线bookmark才有用),那么可以用gmark的导出功能,导出到html。然后用firefox的导入,同步两个bookmark。其他插件要么是使用不习惯,要么就是不能和firefox自身的bookmark同步(都是单向的从firefox bookmark导出)。 google reader notifier,推荐用google reader的挂线族。这个插件会提示你有多少东西你没有读,定时刷新。 google笔记本,这个需要到google去下载,和gmark一样是让多个电脑同步的好东西。可以直接弹出一个google note让你记东西,并且在任何地方访问。同时也可以选中网页中的部分内容,点击加笔记,自动添加到笔记本中。 greasemonkey,强力推荐,将用户脚本插入到页面中的组件,可以动态修改页面行为。下面会专门讲用这个组件挂脚本的技巧。 IE tab,强力推荐,有的时候突然需要看IE,但是单独开一个IE非常麻烦。直接点右下的这个图标,当前页面就会自动切换成IE浏览。只是如果处于登陆中,恐怕会退出。 keyconfig,可以自己配置firefox的快捷键。 MinimizeToTray,最小化到托盘区的组件。配合上面一个,对付老板的利器阿。 NoScript,强力推荐,拒绝恶意脚本,增加安全性。当然,弄不好就是拒绝正常脚本,增加麻烦。 Session Manager,强力推荐,可以保存你当前在看的所有列表,下次恢复。也可以同时恢复登陆状态(例如你登陆了网站,下次上线就如同中间没有做任何动作一样,当然如果超时被踢就没办法了),恢复关闭窗口。对付firefox的重起,减少内存消耗(手动重起),看一堆页面看到一半有事……等等。非常有效。 Tree Style Tab,另类的tab样式,把tab在左边做成树,可以折叠展开。如果你和我一样,经常喜欢大量的打开页面。此时,上面的tab往往缩的很小,看都看不到,但是还是长的要左右乱翻。这个时候这个插件非常有效。而且可以看到浏览的派生关系。如果平时觉得浪费空间,可以改回去。等需要的时候改过来。 Update Scanner,扫描页面变化,如果有变化提示。对于看小说/泡论坛……等等。不用你们一天老去刷帖子了,这个插件可以提示你页面是否更新。当然不是没有更好的,不过那些东西都要写变化脚本,天哪~~ 上述的插件大都能在addons.mozilla.org或者addons.mozine.cn找到,如果不行就去google搜索。注意使用插件会消耗一定内存,尽管上面的大多插件都不怎么消耗内存,可都放上也比较让人受不了。一般贝壳都是将不用的转到禁用的。 下面讲解greasemonkey的用户脚本技巧,多数脚本可以到userscript.org找到。 GoogleTagCloudMaker,最好用的greasemonkey脚本。可以将google搜索的广告移除,变成关键字云。点击关键字云往往能追踪搜索,直到找到需要的东西。 Show Btchina,让你可以浏览bt.btchina.net。这是个bittorrent种子搜集站,但是firefox无法浏览。使用这个脚本使得firefox可以正常浏览。 Download Youtube Video III,在youtube的播放文件下面显示一个download,链接到播放的flv文件。可以很轻松的进行下载。以前贝壳都是用youplayer,老开着占内存,不老开就要重起firefox。虽然有session manager,不过也很讨厌。使用脚本就可以针对页面工作,减少内存消耗。 以上的脚本在安装greasemonkey后可以直接点击安装。

用firefox看facebook的问题

Mar 3, 2008 - 1 minute read - Comments

用firefox看facebook的时候老出问题,主要是验证码无法通过。会么?这年头连live spaces都可以用firefox了。(当然图片上传例外,除非你用IE Tab)而且facebook还有firefox的toolbar,要是再无法使用firefox就太奇怪了。 今天总算发现了问题的所在,facebook使用了ajax技术,这种技术会动态的载入和卸载一些页面内容。而我使用了NoScript脚本,并且将facebook加入了白名单。这下可中计了。facebook常规浏览的时候,脚本都来自facebook本身。而当验证的时候,使用的另外一个公司的服务。在验证前,页面的脚本都是不被阻止的,因此我也没有发现异常。在点击验证后,由于页面没有刷,所以我压根没有注意到,下面的阻止从完全通过变成了部分阻止。当然,被阻止的就是另外一家公司的验证脚本。 因此,我将这家公司也加入了NoScript的白名单。OK,世界从此清静了。

艳照门事件的问题所在

Mar 2, 2008 - 1 minute read - Comments

艳照门事件,大家都骂陈冠希变态。不过可能没人想过,自拍可不是问题所在。 如果要说自拍大家无法接受的话,莫非那堆女的也跟着变态。要是陈冠希和老婆的照片流出来,大家绝对会当那是受害者吧。陈冠希的罪状,在于滥交和第三者。而其中让大家最起哄的,莫过于男人对女主角数量的嫉妒和女人这种事情的反感。

多出的一天,被偷走的一天

Feb 29, 2008 - 1 minute read - Comments

四年一次,229。 今年我们是幸运的,因为四年才碰到一次,项目周期可以多一天。 今年我们也是不幸的,因为如果不跨二月,项目周期可以再多一天。 下次229会是幸运还是不幸呢?鬼知道。 P.S.本来都忘记了,结果今天看nancy同学blog的rss,又想起来了。赶在今天最后的一点时间,写点啥纪念纪念。

关于香港艺人裸照事件

Feb 28, 2008 - 1 minute read - Comments

香港的艺人裸照事件现在已经是沸沸扬扬,具体情况相信也不用我说了,去网络上找一下,遍地都是。既然大家都已经发表意见,当事人也不愿意多说,我也不想揭人伤疤。不过我倒是对裸照事件中网络的特性很感兴趣,并且想说说未来网络的各各方面的问题。 在这次裸照事件中,真正的幕后发布者”奇拿”从头到尾没有露面,也没有任何消息确认谁就是”奇拿”。他发布照片也不是满世界张贴,而是通过各处的网民转贴。如果不是网络,这一切都是不可想像的。你无法想像自己的裸照会意外的流出,被人倒处张贴,而这个人你还绝对找不到。为什么网络如此特殊呢?因为网络从设计的开始就注定和通常的通讯系统不同。网络具备很高的匿名性,具有一定技术的人员(这种技术要求大致就相当于一个高中水平的人经过一年训练的水准)可以任意的发送消息而不会被追踪。电影上那种特工通过什么东西而追踪用户的事情,在经过一定训练的人手里完全不可能发生。国和国之间的矛盾,法律真空地区,他们永远有办法躲避追踪。换句话说,只要你希望,任何人都可以随意在网络上发消息而且保持匿名。并且广大的网友会自动的将消息传递到各个角落。而且这种发布是极为迅速的,往往是发布会还在开,讲稿已经到了各大论坛。 这个特性是对各国政府,各大公司,大型组织的一个极大挑战! 为什么呢? 自从传播学被从其他学科中分离并且发展起来后,任何大型组织都不会忽视传播的力量。很多巨大的事情往往会因为一点信息而被改变,因此控制信息的人具有相当的力量。也许有人会说我影射中国政府,我不驳斥我说的大型组织中包括中国共产党。然而谁可以找到一个大型组织,对自己的信息完全忽视,还可以蓬勃发展呢?美国也有水门事件,也有新闻控制。从这个意义上说,”控制信息”可以被视为大型组织维持自身形象的一个必然手段。 然而网络打破了这个手段。 大家应该都知道中国的GFW,当然,其宣称的目的是”屏蔽境外有悖于中共当前政策的内容,例如黄色,反动等”。这个可以看做是中共对于网络的必然反应--既希望可以借助网络的力量来发展国家,又担心网络的发展使得国家失去对信息的掌控力。然而通过技术屏蔽的手段是无效的,绕过和伪装远远比发现简单。自从二战以来,数学密码,换位密码,对称密钥的发展,使得加密比破解容易上无数倍。即使是个人,也完全有能力传递国家无法破解的信息,或者将其伪装到根本不会被注意的庞大信息海洋中。可以说,现在如果有战争,那么敌对国家间首要做的事情就是断网,彻底从Internate上断开,包括无线信号。否则只要有邮件收发,就根本查不出其中是否被混入了无法侦测的内容。而返回我们这个论题本身,大型组织对于信息的掌控力,则彻底的被网络剥夺了。 然后,我们完全可能设计出一套系统,使得信息从一个人到另外一个人的传递是无法被窥视和修改的,也是无需通过中心节点的。(笔者当年就曾经设计过这种东西,当然因为众所周知的原因,放弃了)当然,大众是否会使用是一回事情。通过这种东西,我们将来的信息必然是分布的,从个人到个人的,无干预的。这种情况下,我们需要考虑两个问题。这种可能性对社会的影响,这种可能性下的规范。 如果考虑这种可能性对社会的影响,我觉得是相当难说的。一方面,开放的信息传播使得信息透明化和公开化。如果掌控的好,会成为大众监督政府的利器。政府的问题会被迅速瀑光,并且得到解决。从这个角度讲,我们会得到一个更加公正的社会。然而从另外一方面讲,信息的匿名化会使得信息质量劣化。成为虚假消息的温床和散播垃圾的根据地,不负责的言论和奇谈怪论试图吸引人民的眼球。并且,更严重的,会产生很多违背本意的现象。例如网络暴力。 因此我们必须对这种可能性有所规范,从道德层面到法律层面。从道德层面(或许没有这么严重)来说,我们尽力不传播对于我们没有意义的信息,减少传播未经核实的信息。以此减少信息垃圾的产生。然而,我们是否应当去从法律层面阻断垃圾信息的传递呢?恐怕不行。从趋势上说,信息的公开是趋势。反对公开信息,将信息传播控制的权力掌握在少数人手里是逆潮流的。从这个意义上讲,中国公安部禁止个人间传递照片的行为也有简单粗暴的嫌疑。正确的应当是个人间的传递国家不干涉,然而可以由受害者提起民事附带刑事诉讼。