破解cornerstone其实很容易

试用软件,要判断你使用此软件是否已经过期,肯定是要在系统里留下点什么东西的,不靠这个,他怎么知道你用了多久,只要找到这些东西将其删除即可。

用root用户和普通用户分别打开cornerstone,发现普通用户提示已经过期,但是root用户可以正常试用,那就很明确了,那些蛛丝马迹肯定是留在个人目录里,基本可以确定是在Library里,于是:

# mv Library Library.back

然后用普通用户运行cornerstone,发现又可以再次试用了,然后:

# ls -aR

你就可以看到cornerstone运行过后到底会在系统里留下点什么东西,于是很方便的就发现这个文件:

~/Library/Preferences/ByHost/com.zennaware.Cornerstone.6F1617DF-DDD5-5F2D-ACA0-F7F3EE5F7B41.plist

各台机器文件名有可能不一样,但是肯定是com.zennaware.Cornerstone.*.plist 这个规范的。

打开他,就一目了然了,将试用天数改为10000,于是印证了那句话“倘若真的要在这个时间上加一个期限的话,我希望是一万天”(就不要说“年”了,那么长,cornerstone会破产的)。

Tor网桥(Tor Bridges)设置–连接中继目录feiled(没有可用链路)

打开Tor控制面板,点击设定,选择网络,有三个选项,选择“我的ISP阻挡了对Tor网路的连接”连接。可以看到出现了Bridge Setting(网桥设置)框,可以为Tor添加Bridge了。

bridges@torproject.org发封邮件(Gmail或其他的国外邮箱),内容和标题为“get bridges”。然后你会收到回信,里面是你可以使用的三个bridge。将bridge复制到输入框,点击绿色的加号图标即可。除了上述发邮件的方法,也可访问https://bridges.torproject.org官方网站获得网桥地址(此方法需要代理)!

PHP面向对象的链式调用方式

在ZF里面经常有和jQuery类似的链式的结构代码。

$("p").css("color").addClass("selected");//jQuery
//比如这样jQuery可以连着使用2个方法。在ZF中也有发现类似的链式
$this->_plugins->setRequest($this->_request)->setResponse($this->_response);

于是就跟进了函数,发现实现起来也还蛮简单的。只需要在每个方法最后返回$this

阅读更多