<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>鱼常游而忘飞 &#187; 技术</title>
	<atom:link href="http://www.oulan.com/w/category/tech/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.oulan.com/w</link>
	<description>+++仿佛轻云应笑我--相携水岸弄朝霞--此生只为听天籁--坐拥书城看落花+++</description>
	<lastBuildDate>Fri, 23 Jul 2010 02:41:49 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Fujitsu XL-C7300 driver</title>
		<link>http://www.oulan.com/w/2010/07/23/fujitsu-xl-c7300-driver/</link>
		<comments>http://www.oulan.com/w/2010/07/23/fujitsu-xl-c7300-driver/#comments</comments>
		<pubDate>Fri, 23 Jul 2010 02:41:49 +0000</pubDate>
		<dc:creator>Ou Lanhui</dc:creator>
				<category><![CDATA[软件推荐]]></category>
		<category><![CDATA[Fujitsu]]></category>
		<category><![CDATA[XL-C7300]]></category>

		<guid isPermaLink="false">http://www.oulan.com/w/?p=2079</guid>
		<description><![CDATA[一台富士通XL-C7300找不到驱动了，日语不好，找了半天，可以在这里下载了：
驱动下载
]]></description>
			<content:encoded><![CDATA[<p>一台富士通XL-C7300找不到驱动了，日语不好，找了半天，可以在这里下载了：<br />
<a href="http://www.oulan.com/w/?VqFqU4Xy">驱动下载</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.oulan.com/w/2010/07/23/fujitsu-xl-c7300-driver/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>云端漫步：Apps marketplace</title>
		<link>http://www.oulan.com/w/2010/07/15/cloud-computing-apps-marketplace/</link>
		<comments>http://www.oulan.com/w/2010/07/15/cloud-computing-apps-marketplace/#comments</comments>
		<pubDate>Thu, 15 Jul 2010 13:55:45 +0000</pubDate>
		<dc:creator>Ou Lanhui</dc:creator>
				<category><![CDATA[关注]]></category>
		<category><![CDATA[软件推荐]]></category>
		<category><![CDATA[cloud computing]]></category>
		<category><![CDATA[云计算]]></category>

		<guid isPermaLink="false">http://www.oulan.com/w/?p=2067</guid>
		<description><![CDATA[作为一个相信下一波是云计算、移动计算的人，今天收到The Google Apps Team的这封邮件很让人高兴。成熟应用的出现，会使市场的选择更为轻松。
The Google Apps Marketplace
很多传统的桌面工具都可以找到替代品，比如甘特图：
https://app.gantter.com/，这个还是免费的。

简单看一下，安装排行，免费的还是大多数的：Top Installed
第一名的仍然是项目和任务管理工具：Manymoon: Free Social Productivity, Project Management &#38; Task Management，已经在云计算中表现突出的Zoho，它的产品Zoho CRM3用户免费的版本在这个排行中排名第4。
用户评价排名(Top rated)中工作流软件RunMyProcess &#8211; Workflows and Integration for Google Apps排名第一。
多年之前，IBM靠PC及其兼容体系统撂倒了苹果，使其在个人电脑上只能固守高端用户，并且微软成功的利用这个机遇崛起。多年之后，Google会否凭借其开放的GAE策略，结合Android移动操作系统和Chrome OS云操作系统，再度在云计算和移动计算领域给予乔老师一击，完成这个时代的应用变革呢？
]]></description>
			<content:encoded><![CDATA[<p>作为一个相信下一波是云计算、移动计算的人，今天收到The Google Apps Team的这封邮件很让人高兴。成熟应用的出现，会使市场的选择更为轻松。</p>
<p><a href="http://www.oulan.com/w/?aB9yNZPG">The Google Apps Marketplace</a></p>
<p>很多传统的桌面工具都可以找到替代品，比如甘特图：</p>
<p><a href="http://www.oulan.com/w/?RHeKkNuf">https://app.gantter.com/</a>，这个还是免费的。</p>
<p><img class="size-medium wp-image-2072 alignnone" title="app.gantter.com" src="http://www.oulan.com/w/wp-content/uploads/2010/07/app.gantter.com_-300x132.jpg" alt="" width="300" height="132" /></p>
<p>简单看一下，安装排行，免费的还是大多数的：Top Installed<br />
第一名的仍然是项目和任务管理工具：Manymoon: Free Social Productivity, Project Management &amp; Task Management，已经在云计算中表现突出的Zoho，它的产品Zoho CRM3用户免费的版本在这个排行中排名第4。</p>
<p>用户评价排名(Top rated)中工作流软件RunMyProcess &#8211; Workflows and Integration for Google Apps排名第一。</p>
<p>多年之前，IBM靠PC及其兼容体系统撂倒了苹果，使其在个人电脑上只能固守高端用户，并且微软成功的利用这个机遇崛起。多年之后，Google会否凭借其开放的GAE策略，结合Android移动操作系统和Chrome OS云操作系统，再度在云计算和移动计算领域给予乔老师一击，完成这个时代的应用变革呢？</p>
]]></content:encoded>
			<wfw:commentRss>http://www.oulan.com/w/2010/07/15/cloud-computing-apps-marketplace/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>两个黑莓健身软件和一个Appworld替代站</title>
		<link>http://www.oulan.com/w/2010/07/14/bb-ex/</link>
		<comments>http://www.oulan.com/w/2010/07/14/bb-ex/#comments</comments>
		<pubDate>Wed, 14 Jul 2010 13:14:11 +0000</pubDate>
		<dc:creator>Ou Lanhui</dc:creator>
				<category><![CDATA[软件推荐]]></category>
		<category><![CDATA[BlackBerry]]></category>
		<category><![CDATA[黑莓]]></category>

		<guid isPermaLink="false">http://www.oulan.com/w/?p=2061</guid>
		<description><![CDATA[好吧，作为黑莓用户，特别是9k这样服役期很久的机型，现在缺乏的一个应用是像Android app2sd这样的应用。128M内存，实在是太少了。随便安装点内容，立刻只剩下20M左右。如果打开几个应用，开些网页，就只剩下几M空间。虽然速度不受太大的影响，但是偶尔提示出来的释放空间的提示让人倒胃口。
国内的黑莓机处于非常奇怪的状态，因为大部分是没有上服务的水货。Appworld中无数免费好玩的程序只能看，不能玩。ROM里提供的appworld经常抽风，比如我刷681之前的那个版本，好象是592吧，appworld是可以用的，刷完681就只能在application的core分类里看看了。
前一段时间想给家里领导换个电话，一直想给她买个Milestone，可是DroidX的释出，让人对Milestone 2的向往更增烦恼，肯定更贵，而且年底将上市一些基于Android3的2G双核机型，转眼明年，又该iPhone 4Gs了。电子产品的世界，要么尝鲜，要么永远跟在后头。这是一些机缘。因此在Twitter上关注了@imwolfe。在他的博客上可以看到两个健身软件Endomondo和sportypal的介绍。詳細的内容请看他的博客吧。运动与科技的结合&#8211;将Milestone用到极致。
用了3G之后一直是OTA，而且只访问软件的主站，这比较符合我的习惯。sportypal的主站直接就可以完成软件的下载，而endomondo只给出了一个appworld链接。只好找替代。发现myota.cn这个站还是不错的，提供了appworld功能。也可以找到endomondo。这下ota有门了，appworld也不急于可以直接在手机上使用了。
现在手机变化好快。Droid X将于19号正式上市。iPhone 4G也开卖了，据说8月底正式在国内开卖。年底还有的大戏如Android 3，2G CPU版本的Android机。又有人称最近Apple还有革命性的产品问世。而国内的网站也出站了大批软件的支持，输入法、微博客户端、聊天程序。。。但是黑莓相对声音就小得多。还看不到相关的程序支持。据说电信已经有黑莓的服务了，联通年底会开，而移动，可能会发布9800吧。实在这些都不行或者太贵，那就换成折腾系的Android手机吧。
今天发布这篇文章居然丢失内容了。:( 因文章内容丢失，所以文章内容有修改，且不连续，抱歉。
]]></description>
			<content:encoded><![CDATA[<p>好吧，作为黑莓用户，特别是9k这样服役期很久的机型，现在缺乏的一个应用是像Android app2sd这样的应用。128M内存，实在是太少了。随便安装点内容，立刻只剩下20M左右。如果打开几个应用，开些网页，就只剩下几M空间。虽然速度不受太大的影响，但是偶尔提示出来的释放空间的提示让人倒胃口。</p>
<p>国内的黑莓机处于非常奇怪的状态，因为大部分是没有上服务的水货。Appworld中无数免费好玩的程序只能看，不能玩。ROM里提供的appworld经常抽风，比如我刷681之前的那个版本，好象是592吧，appworld是可以用的，刷完681就只能在application的core分类里看看了。</p>
<p>前一段时间想给家里领导换个电话，一直想给她买个Milestone，可是DroidX的释出，让人对Milestone 2的向往更增烦恼，肯定更贵，而且年底将上市一些基于Android3的2G双核机型，转眼明年，又该iPhone 4Gs了。电子产品的世界，要么尝鲜，要么永远跟在后头。这是一些机缘。因此在Twitter上关注了<a href="http://www.oulan.com/w/?GMjJT5Jj">@imwolfe</a>。在他的博客上可以看到两个健身软件<a href="http://www.oulan.com/w/?VNDiNGCN">Endomondo</a>和<a href="http://www.oulan.com/w/?aKq1pVoL">sportypal</a>的介绍。詳細的内容请看他的博客吧。<a href="http://www.oulan.com/w/?6XXxKC4g">运动与科技的结合&#8211;将Milestone用到极致</a>。</p>
<p>用了3G之后一直是OTA，而且只访问软件的主站，这比较符合我的习惯。sportypal的主站直接就可以完成软件的下载，而endomondo只给出了一个appworld链接。只好找替代。发现<a href="http://www.oulan.com/w/?ecPX7o7S">myota.cn</a>这个站还是不错的，提供了appworld功能。也可以找到endomondo。这下ota有门了，appworld也不急于可以直接在手机上使用了。</p>
<p>现在手机变化好快。Droid X将于19号正式上市。iPhone 4G也开卖了，据说8月底正式在国内开卖。年底还有的大戏如Android 3，2G CPU版本的Android机。又有人称最近Apple还有革命性的产品问世。而国内的网站也出站了大批软件的支持，输入法、微博客户端、聊天程序。。。但是黑莓相对声音就小得多。还看不到相关的程序支持。据说电信已经有黑莓的服务了，联通年底会开，而移动，可能会发布9800吧。实在这些都不行或者太贵，那就换成折腾系的Android手机吧。</p>
<p>今天发布这篇文章居然丢失内容了。:( 因文章内容丢失，所以文章内容有修改，且不连续，抱歉。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.oulan.com/w/2010/07/14/bb-ex/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>旧电话通讯录的备份方法</title>
		<link>http://www.oulan.com/w/2010/07/10/contacts-backup/</link>
		<comments>http://www.oulan.com/w/2010/07/10/contacts-backup/#comments</comments>
		<pubDate>Fri, 09 Jul 2010 22:54:40 +0000</pubDate>
		<dc:creator>Ou Lanhui</dc:creator>
				<category><![CDATA[技巧]]></category>
		<category><![CDATA[Google Sync]]></category>
		<category><![CDATA[索爱]]></category>

		<guid isPermaLink="false">http://www.oulan.com/w/?p=2058</guid>
		<description><![CDATA[要给LP的索爱908C备份通讯录，发现Google Sync仍然可以用于这款老机器。
Google昨天刚刚发布了面向iPhone、BlackBerry、Windows Mobile等手机的Google Sync服务。该服务能够把支持Microsoft Exchange ActiveSync协议或SyncML协议手机的联系人、日历信息（未来应该还支持邮件等更多Google服务的同步）与Google服务器进行同步。 通过Push Mail技术（应该主要针对支持Microsoft Exchange ActiveSync协议的手机），用户在PC上对通讯录和日程安排所做的变动,可以在实时同步到手机上。本文详细介绍了windows mobile、symbian平台手机使用Google Sync的配置方法，并介绍了syncml的基础知识
目前Google Sync主要支持如下一些平台：
iPhone
BlackBerry
Nokia S60
Nokia standard
Sony Ericsson
Windows Mobile
很奇怪，竟然不支持Google自己的Android平台，相信在Android平台，Google Sync的功能更为全面和强大。
值得注意的两则新闻是：
1、Google Takes Patent License to Microsoft Exchange ActiveSync 。
Google获得了Microsoft Exchange ActiveSync 使用授权，因此Google Sync对一些平台（主要是Windows Mobile、iPhone）的同步支持利用了ActiveSync协议，相信这是Google为支持Push Mail功能等其他商务功能从而争取商务人士而采用的一步棋子，毕竟Exchange Server在企业应用还是很广泛的。
2、微软推出移动备份服务My Phone
呵呵，看来没有永远的敌人，只有永远的利益。
1、Symbian平台的Google Sync配置
对于基于Symbian平台的Nokia S60、Nokia  Standard、Sony Ericsson的支持机型，是基于Syncml协议来完成，关于Syncml可以参考后面的介绍。
以N95为例子，配置步骤如下：
1、选择“功能表”-&#62;工具-&#62;同步处理
2、选择选项 -&#62; 新同步情景模式，填写如下选项
同步情景模式名称：Google Sync
点击“应用程序”，进入设置，填写如下内容
名片夹 是否同步：是 远程数据库：contacts ，注意必须正确拼写 同步类型：双向，可以根据需要选择双向、仅到服务器、仅到手机，具体参考后面的syncml的7种同步方式。 按照官方说明，目前Symbian平台似乎只支持都通信录的同步，因此只需要配置名片夹选项，
3、连接设置
服务器版本：1.2 服务器识别码：Google，注意是大写的G 数据承载方式：互联网 接入点：选择用户定义 -&#62; 移动梦网 主机地址：https://m.google.com/syncml （注意为https） 端口：443 用户名: Gmail帐户名（格式为userid@gmail.com） [...]]]></description>
			<content:encoded><![CDATA[<p>要给LP的索爱908C备份通讯录，发现Google Sync仍然可以用于这款老机器。</p>
<p>Google昨天刚刚发布了面向iPhone、BlackBerry、Windows Mobile等手机的Google Sync服务。该服务能够把支持Microsoft Exchange ActiveSync协议或SyncML协议手机的联系人、日历信息（未来应该还支持邮件等更多Google服务的同步）与Google服务器进行同步。 通过Push Mail技术（应该主要针对支持Microsoft Exchange ActiveSync协议的手机），用户在PC上对通讯录和日程安排所做的变动,可以在实时同步到手机上。本文详细介绍了windows mobile、symbian平台手机使用Google Sync的配置方法，并介绍了syncml的基础知识</p>
<p>目前Google Sync主要支持如下一些平台：</p>
<p>iPhone<br />
BlackBerry<br />
Nokia S60<br />
Nokia standard<br />
Sony Ericsson<br />
Windows Mobile<br />
很奇怪，竟然不支持Google自己的Android平台，相信在Android平台，Google Sync的功能更为全面和强大。</p>
<p>值得注意的两则新闻是：</p>
<p>1、Google Takes Patent License to Microsoft Exchange ActiveSync 。</p>
<p>Google获得了Microsoft Exchange ActiveSync 使用授权，因此Google Sync对一些平台（主要是Windows Mobile、iPhone）的同步支持利用了ActiveSync协议，相信这是Google为支持Push Mail功能等其他商务功能从而争取商务人士而采用的一步棋子，毕竟Exchange Server在企业应用还是很广泛的。</p>
<p>2、微软推出移动备份服务My Phone</p>
<p>呵呵，看来没有永远的敌人，只有永远的利益。</p>
<p>1、Symbian平台的Google Sync配置<br />
对于基于Symbian平台的Nokia S60、Nokia  Standard、Sony Ericsson的支持机型，是基于Syncml协议来完成，关于Syncml可以参考后面的介绍。<br />
以N95为例子，配置步骤如下：<br />
1、选择“功能表”-&gt;工具-&gt;同步处理<br />
2、选择选项 -&gt; 新同步情景模式，填写如下选项<br />
同步情景模式名称：Google Sync<br />
点击“应用程序”，进入设置，填写如下内容<br />
名片夹 是否同步：是 远程数据库：contacts ，注意必须正确拼写 同步类型：双向，可以根据需要选择双向、仅到服务器、仅到手机，具体参考后面的syncml的7种同步方式。 按照官方说明，目前Symbian平台似乎只支持都通信录的同步，因此只需要配置名片夹选项，<br />
3、连接设置<br />
服务器版本：1.2 服务器识别码：Google，注意是大写的G 数据承载方式：互联网 接入点：选择用户定义 -&gt; 移动梦网 主机地址：<a href="http://www.oulan.com/w/?2cyq5XQs" target="_blank">https://m.google.com/syncml</a> （注意为https） 端口：443 用户名: Gmail帐户名（格式为<a href="http://www.oulan.com/w/?kPyZi_Lf">userid@gmail.com</a>） 密码: Gmail密码 其他选项保持不变 4、点击返回，返回到同步处理界面（选择功能表 -&gt; 连接功能 -&gt; 同步处理） 5、选中Google Sync，开始同步</p>
<p>2、Windows Mobile平台Google Sync配置<br />
对于Windows Mobile平台的支持机型，配置方法如下：</p>
<p>1、打开ActiveSync</p>
<p>2、点击“菜单”-&gt;添加源服务器</p>
<p>3、在“输入电子邮件地址”步骤，输入Gmail的电子邮件地址（不要选中“尝试自动检测Exchange Server设置”），点击下一步</p>
<p>4、在“编辑服务器设置”步骤，输入服务器地址m.google.com(选中“服务器需要加密的（SSL）连接”)，点击下一步</p>
<p>5、在“用户信息”步骤，填写用户名字段（<a href="http://www.oulan.com/w/?kPyZi_Lf">userid@gmail.com</a>）、密码字段，域字段为空，选中“保存密码”，点击下一步</p>
<p>6、在“编辑服务器设置”步骤，选中要同步的数据，点击完成，开始同步操作</p>
<p>3、其他平台同步配置<br />
对于iPone平台，Google Sync采用了Microsoft Exchange ActiveSync协议，同步设置方式可以参考Google的官方帮助<br />
Sync: Set Up Your iPhone or iPod Touch<br />
对于BlackBerry平台，Google Sync有单独的客户端，可以从用手机访问地址<a href="http://www.oulan.com/w/?7xeUyT3v" target="_blank">http://m.google.com/sync</a>，然后下载Google Sync客户端，配置后进行同步。具体使用可以参考<br />
对于Motorola、Samsung、天宇（包括一些山寨机）的一些支持Syncml的机型，也可以按照类似步骤进行配置。 Motorola支持Syncml的机型：A1200、A728、A760、A768i、A780、E2、E6、L6、L7、U6、V3、V300、V303、V360、V3i 、V600、V8、Z3  Samsung支持Syncml的机型：SGH-D508、SGH-E728</p>
<p>Google今天推出了强大的Google Sync，如果你在使用Google Contacts或Calendars又有一台智能手机的话,它可以让你的iPhone,Symbian,BlackBerry和WM系统进行信息同步。 可是非智能系统就不能享受Google Sync了吗？非也！只要你的手机支持SyncML协议，就可以通过设置使用Google Sync了！除了Google提及的智能系统外，还支持如下型号：</p>
<p>诺基亚 Symbian S60 第三版 (如 E系列,N系列,6120,6121)<br />
诺基亚 Symbian S60 第二版, Feature Pack 2 or higher (如 6630, 6680, N70, N90, etc.)<br />
大部分索尼爱立信手机</p>
<p>以索尼爱立信的K790c为例（由于不是智能手机无法截图，请见谅）：</p>
<p>1. 打开菜单（Menu）——按0或进入管理器（Organizer）——同步（Synchronization）</p>
<p>2. 点击“添加新帐户”（New account），并起名为Google Sync</p>
<p>3. 按照如下填写：</p>
<p>服务器地址: <a href="http://www.oulan.com/w/?2cyq5XQs" target="_blank">https://m.google.com/syncml</a> （注意为https）<br />
用户名: 你常用的Gmail帐户名<br />
密码: 你的Gmail密码<br />
连接: 选择你常用的Internet接入点 （cmwap应该不可以）<br />
应用程序: 只选择“联系人”，然后确定<br />
程序设置: 打开“联系人”在“数据库名称”中输入：contacts (全小写),其他留空<br />
同步周期: 自定义Google Sync的同步周期间隔<br />
其他留空并保存</p>
<p>点击保存退出，选择刚建立的Google Sync配置文件点击“开始”，即可与Google Contacts同步，然后进入Gmail里的“联系人”，即可看到你的电话本了。</p>
<p><a href="http://www.oulan.com/w/?xj0IR8uI">http://nokia.it168.com/thread-942767-1-1.html</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.oulan.com/w/2010/07/10/contacts-backup/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>开发组件:php-mobile-detect</title>
		<link>http://www.oulan.com/w/2010/07/09/php-mobile-detect/</link>
		<comments>http://www.oulan.com/w/2010/07/09/php-mobile-detect/#comments</comments>
		<pubDate>Thu, 08 Jul 2010 22:51:10 +0000</pubDate>
		<dc:creator>Ou Lanhui</dc:creator>
				<category><![CDATA[软件推荐]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.oulan.com/w/?p=2056</guid>
		<description><![CDATA[现在移动设备的能力越来越强大。对于小型网站检测移动设备可以试试这个PHP组件。
这个组件包括了一个名为Mobile_Detect的类，可以检测：Android, BlackBerry, Opera Mini, Palm, Windows Mobile等移动设备平台。
用法很简单：


include(&#34;Mobile_Detect.php&#34;);
$detect = new Mobile_Detect();

if ($detect-&#62;isAndroid()) {
    // code to run for the Google Android platform
}

其它的方法包括：
isAndroid(), isBlackberry(), isOpera(), isPalm(), isWindows(), isGeneric()等。如果你不是专注于某一个特定的平台，也可以采用下面的方法检测是否是移动设备平台:


if ($detect-&#62;isMobile()) {
    // any mobile platform
}

同时，PHP的学习者也可以通过这个小巧的组件学习到PHP中如何定义类，并且采用__call内置类来实现动态函数名的。
php-mobile-detect
]]></description>
			<content:encoded><![CDATA[<p>现在移动设备的能力越来越强大。对于小型网站检测移动设备可以试试这个PHP组件。</p>
<p>这个组件包括了一个名为Mobile_Detect的类，可以检测：Android, BlackBerry, Opera Mini, Palm, Windows Mobile等移动设备平台。</p>
<p>用法很简单：</p>
<pre class="brush: php; ">

include(&quot;Mobile_Detect.php&quot;);
$detect = new Mobile_Detect();

if ($detect-&gt;isAndroid()) {
    // code to run for the Google Android platform
}
</pre>
<p>其它的方法包括：<br />
isAndroid(), isBlackberry(), isOpera(), isPalm(), isWindows(), isGeneric()等。如果你不是专注于某一个特定的平台，也可以采用下面的方法检测是否是移动设备平台:</p>
<pre class="brush: php; ">

if ($detect-&gt;isMobile()) {
    // any mobile platform
}
</pre>
<p>同时，PHP的学习者也可以通过这个小巧的组件学习到PHP中如何定义类，并且采用__call内置类来实现动态函数名的。</p>
<p><a href="http://www.oulan.com/w/?AZzpV9Q0">php-mobile-detect</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.oulan.com/w/2010/07/09/php-mobile-detect/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Test: 在C程序中集成LUA</title>
		<link>http://www.oulan.com/w/2010/07/08/c-lua/</link>
		<comments>http://www.oulan.com/w/2010/07/08/c-lua/#comments</comments>
		<pubDate>Wed, 07 Jul 2010 23:56:56 +0000</pubDate>
		<dc:creator>Ou Lanhui</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[技巧]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[Lua]]></category>
		<category><![CDATA[集成]]></category>

		<guid isPermaLink="false">http://www.oulan.com/w/?p=2052</guid>
		<description><![CDATA[虽然一直对LUA感兴趣，可惜是一直以来对它的兴趣集中在WOW插件上，而且只是使用。因为它在WOW中的精彩，我非常想尝试一下建立一个类似的环境。昨晚做了个很容易查询到的例子，在Ubuntu Linux 10.04下编译通过：
文件清单：
1. test.c


#include &#34;lua.h&#34;
#include &#34;lualib.h&#34;
#include &#34;lauxlib.h&#34;

int main()
{
    int s=0;

    lua_State *L = lua_open();

    // load the libs
    luaL_openlibs(L);

    //run a Lua scrip here
    luaL_dofile(L,&#34;foo.lua&#34;);

    printf(&#34;\nI am done with Lua in C++.\n&#34;);

   [...]]]></description>
			<content:encoded><![CDATA[<p>虽然一直对LUA感兴趣，可惜是一直以来对它的兴趣集中在WOW插件上，而且只是使用。因为它在WOW中的精彩，我非常想尝试一下建立一个类似的环境。昨晚做了个很容易查询到的例子，在Ubuntu Linux 10.04下编译通过：<br />
文件清单：<br />
1. test.c</p>
<pre class="brush: c; ">

#include &quot;lua.h&quot;
#include &quot;lualib.h&quot;
#include &quot;lauxlib.h&quot;

int main()
{
    int s=0;

    lua_State *L = lua_open();

    // load the libs
    luaL_openlibs(L);

    //run a Lua scrip here
    luaL_dofile(L,&quot;foo.lua&quot;);

    printf(&quot;\nI am done with Lua in C++.\n&quot;);

    lua_close(L);

    return 0;
}
</pre>
<p>2. foo.lua<br />
[code language="lua"]<br />
print("I am using Lua from within C")<br />
[/code]<br />
编译过程：</p>
<pre class="brush: bash; ">

gcc test.c -I /usr/include/lua5.1 -llua5.1
</pre>
<p>执行結果：</p>
<pre class="brush: bash; ">

I am using Lua from within C

I am done with Lua in C++.
</pre>
<p>今晨的球，德国0:1西班牙。再看百度贴吧中的预言：<br />
<a href="http://www.oulan.com/w/?F0vJDqFP"X来自未来</a><br />
我来自不远的未来，我知道很多人只会把我的话当是个玩笑，我愿意先给大家一点事实的证据。</p>
<p>我给出的的证据很简单，目前世界最关注的世界杯，决赛双方将是荷兰和西班牙，荷兰2：1战胜了西班牙，斯内德和另一个你们猜不出的替补球员进了球。希望我的这番话不要在世界杯决赛前传到南非，否则我担心球员心态受影响，从而改变了历史。</p>
<p>一个月后我会回来，那时候希望你们愿意相信我的所有关于未来的话！<br />
</a><a href="http://www.oulan.com/w/?XVSmr0RA">贴吧原址</a> <br />
截图：<img src="http://i370.photobucket.com/albums/oo148/ouland/rec/oracle.jpg" /> <br />
如果Android处理LUA足够快，我愿意做一个预言者。<br />
参考：<br />
1. <a href="http://www.oulan.com/w/?BmlbeEBS">How to embed Lua 5.1 in C++</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.oulan.com/w/2010/07/08/c-lua/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mercurial的简要用法</title>
		<link>http://www.oulan.com/w/2010/06/20/mercurial-brief/</link>
		<comments>http://www.oulan.com/w/2010/06/20/mercurial-brief/#comments</comments>
		<pubDate>Sun, 20 Jun 2010 09:06:51 +0000</pubDate>
		<dc:creator>Ou Lanhui</dc:creator>
				<category><![CDATA[技巧]]></category>
		<category><![CDATA[技术]]></category>
		<category><![CDATA[mercurial]]></category>

		<guid isPermaLink="false">http://www.oulan.com/w/?p=2037</guid>
		<description><![CDATA[今天早上写了段代码，想分享一下。就想到了code.google.com。正好试一下mercurial。
1. 检出很容易
hg clone 
2. 增加文件，与svn很像
hg add
3. 提交，还是一样，与svn很相像。不过还是有区别的。这个命令并没有直接上传到到project的服务器。
hg commit < -m message>
4. 真正的提交到服务器
hg push
5. 增加下面的内容，就可以输入用户名和密码来上传内容了
/.hg/hgrc
[ui]
username = Name 
verbose = True
6. 如果要更新服务器中的改变
hg pull -u
7.
一直喜欢研究各种版本管理工具。记得2004年主持盈科技术管理时就考虑过采用CVS。后来在公司内部配置了CVS服务。后来在新公司布置了SVN。这些成熟开源的工具真的非常好用。不过开源的工具层出不穷，也导致用一段时间有换的念头。比如mercurial，git。偶尔试试还是有不错的感觉。
虽然命令行也比较容易使用，还是习惯GUI方式，被Windows下的tortoise系列的shell集成工具带坏了。因为太方便了。现在在Linux下因为这种集成工具不好找，只能用wincvs类型的workbench了。
想起几年前求职北京一外企被问到cvs命令行，实话实说经常用wincvs被笑。对于很多公司来说，可能是需要专注于某一领域里技能的技术工人而已。其实创意人才还是很多的，不要错过哟。
参照：
1. Mercurial &#8211; 分布式版本控制系统
2. mercurial主站
3. Quick Start
]]></description>
			<content:encoded><![CDATA[<p>今天早上写了段代码，想分享一下。就想到了code.google.com。正好试一下mercurial。<br />
1. 检出很容易<br />
hg clone <repo url></p>
<p>2. 增加文件，与svn很像<br />
hg add</p>
<p>3. 提交，还是一样，与svn很相像。不过还是有区别的。这个命令并没有直接上传到到project的服务器。<br />
hg commit < -m message></p>
<p>4. 真正的提交到服务器<br />
hg push</p>
<p>5. 增加下面的内容，就可以输入用户名和密码来上传内容了<br />
</repo><repo>/.hg/hgrc<br />
[ui]<br />
username = Name <mail><br />
verbose = True</mail></repo></p>
<p>6. 如果要更新服务器中的改变<br />
hg pull -u</p>
<p>7.<br />
一直喜欢研究各种版本管理工具。记得2004年主持盈科技术管理时就考虑过采用CVS。后来在公司内部配置了CVS服务。后来在新公司布置了SVN。这些成熟开源的工具真的非常好用。不过开源的工具层出不穷，也导致用一段时间有换的念头。比如mercurial，git。偶尔试试还是有不错的感觉。<br />
虽然命令行也比较容易使用，还是习惯GUI方式，被Windows下的tortoise系列的shell集成工具带坏了。因为太方便了。现在在Linux下因为这种集成工具不好找，只能用wincvs类型的workbench了。<br />
想起几年前求职北京一外企被问到cvs命令行，实话实说经常用wincvs被笑。对于很多公司来说，可能是需要专注于某一领域里技能的技术工人而已。其实创意人才还是很多的，不要错过哟。<br />
参照：<br />
1. <a href="http://www.oulan.com/w/?ctBXrXyE">Mercurial &#8211; 分布式版本控制系统</a><br />
2. <a href="http://www.oulan.com/w/?vaiI3wW7">mercurial主站</a><br />
3. <a href="http://www.oulan.com/w/?zo5_3ea4">Quick Start</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.oulan.com/w/2010/06/20/mercurial-brief/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>How to scroll to desired element in WebBrowser with Delphi</title>
		<link>http://www.oulan.com/w/2010/06/20/how-to-scroll-to-desired-element-in-webbrowser-with-delphi/</link>
		<comments>http://www.oulan.com/w/2010/06/20/how-to-scroll-to-desired-element-in-webbrowser-with-delphi/#comments</comments>
		<pubDate>Sun, 20 Jun 2010 00:56:39 +0000</pubDate>
		<dc:creator>Ou Lanhui</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[技巧]]></category>
		<category><![CDATA[技术]]></category>
		<category><![CDATA[Delphi]]></category>
		<category><![CDATA[EmbeddedWebBrowser]]></category>
		<category><![CDATA[WebBrowser]]></category>

		<guid isPermaLink="false">http://www.oulan.com/w/?p=2034</guid>
		<description><![CDATA[在Delphi里控制浏览器成为一个需求的原因是有很多文档的html文件都特别巨大，比如有100个章节，想要控制浏览器滚动到指定的章节就成为一件特别有意思的事。
要做这样一件事，很简单，只需要两步，即：
1. 找到它/Found the element


uses
  MSHTML, SysUtils, Variants;

function GetElementById(const Doc: IDispatch; const Id: string): IDispatch;
var
  Document: IHTMLDocument2;     // IHTMLDocument2 interface of Doc
  Body: IHTMLElement2;          // document body element
  Tags: IHTMLElementCollection; // all tags in document body
  Tag: IHTMLElement; [...]]]></description>
			<content:encoded><![CDATA[<p>在Delphi里控制浏览器成为一个需求的原因是有很多文档的html文件都特别巨大，比如有100个章节，想要控制浏览器滚动到指定的章节就成为一件特别有意思的事。<br />
要做这样一件事，很简单，只需要两步，即：<br />
1. 找到它/Found the element</p>
<pre class="brush: pascal; ">

uses
  MSHTML, SysUtils, Variants;

function GetElementById(const Doc: IDispatch; const Id: string): IDispatch;
var
  Document: IHTMLDocument2;     // IHTMLDocument2 interface of Doc
  Body: IHTMLElement2;          // document body element
  Tags: IHTMLElementCollection; // all tags in document body
  Tag: IHTMLElement;            // a tag in document body
  I: Integer;                   // loops thru tags in document body
begin
  Result := nil;
  // Check for valid document: require IHTMLDocument2 interface to it
  if not Supports(Doc, IHTMLDocument2, Document) then
    raise Exception.Create(&#039;Invalid HTML document&#039;);
  // Check for valid body element: require IHTMLElement2 interface to it
  if not Supports(Document.body, IHTMLElement2, Body) then
    raise Exception.Create(&#039;Can&#039;&#039;t find &lt;body&gt; element&#039;);
  // Get all tags in body element (&#039;*&#039; =&gt; any tag name)
  Tags := Body.getElementsByTagName(&#039;*&#039;);
  // Scan through all tags in body
  for I := 0 to Pred(Tags.length) do
  begin
    // Get reference to a tag
    Tag := Tags.item(I, EmptyParam) as IHTMLElement;
    // Check tag&#039;s id and return it if id matches
    if AnsiSameText(Tag.id, Id) then
    begin
      Result := Tag;
      Break;
    end;
  end;
end;
</pre>
<p>2. 滚到它/do scroll</p>
<pre class="brush: pascal; ">

function ScrollToElement(wb: TEmbeddedWB; id: String): Boolean;
var
  Elem: IHTMLElement;
begin
  Elem := GetElementById(wb.Document, id) as IHTMLElement;
  if Assigned(Elem) then
    wb.ScrollToPosition(0, Elem.offsetTop);
end;
</pre>
<p>references：<br />
1. <a href="http://www.oulan.com/w/?MmtimkTY">Finding HTML elements by ID in a TWebBrowser document</a><br />
2. 源码已经发到我在code.google.com上的小工具项目了，直接看吧/You could down the full source code at <a href="http://www.oulan.com/w/?WP1Zu0Tp">my pumpkin project hosted on code.google.com</a><br />
3. <a href="http://www.oulan.com/w/?WCTMaRH2">Scroll view to Anchor position</a></body></p>
]]></content:encoded>
			<wfw:commentRss>http://www.oulan.com/w/2010/06/20/how-to-scroll-to-desired-element-in-webbrowser-with-delphi/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>转发：WordPress(WP)博客日志同步到QQ空间（Qzone）的方法</title>
		<link>http://www.oulan.com/w/2010/06/13/wordpress-qzone/</link>
		<comments>http://www.oulan.com/w/2010/06/13/wordpress-qzone/#comments</comments>
		<pubDate>Sun, 13 Jun 2010 04:44:40 +0000</pubDate>
		<dc:creator>Ou Lanhui</dc:creator>
				<category><![CDATA[关注]]></category>
		<category><![CDATA[软件推荐]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[QZone]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[同步]]></category>

		<guid isPermaLink="false">http://www.oulan.com/w/?p=2031</guid>
		<description><![CDATA[众所周知，QQ 的服务是不会有 API 的，但是如何同步到 Qzone 呢？这里的过程有点曲折，由于 Qzone 支持通过你的 QQ 邮箱发布，而 QQ 邮箱有支持 SMTP 协议，而 WordPress 所包含的 PHPMailer 类可以使用 SMTP 发邮件，所以我们可以通过使用 PHPMailer 同步 WordPress 博客日志到 Qzone。
首先我们可以通过下面的函数登录 QQ 邮箱并给 Qzone 发邮件（你需要首先打开 QQ 邮箱的 SMTP 功能）。
下载wp2qzone插件 
使用方法：
打开 QQ 邮箱的 SMTP 功能。
下载同步到 Qzone 插件：WP2Qzone。
上传到 wp2qzone.php 插件到plugins目录中并激活。
把插件中的 $qq_number 和 $qq_password 设置成你的 QQ 号码和密码。


function smtp_mailer_qqmail($subject,$body){
    $qq_number = &#039;&#039;;
 [...]]]></description>
			<content:encoded><![CDATA[<p>众所周知，QQ 的服务是不会有 API 的，但是如何同步到 Qzone 呢？这里的过程有点曲折，由于 Qzone 支持通过你的 QQ 邮箱发布，而 QQ 邮箱有支持 SMTP 协议，而 WordPress 所包含的 PHPMailer 类可以使用 SMTP 发邮件，所以我们可以通过使用 PHPMailer 同步 WordPress 博客日志到 Qzone。<br />
首先我们可以通过下面的函数登录 QQ 邮箱并给 Qzone 发邮件（你需要首先打开 QQ 邮箱的 SMTP 功能）。<br />
<a href="http://www.oulan.com/w/?yyC6Wi6J">下载wp2qzone插件</a> <br />
使用方法：<br />
打开 QQ 邮箱的 SMTP 功能。<br />
下载同步到 Qzone 插件：WP2Qzone。<br />
上传到 wp2qzone.php 插件到plugins目录中并激活。<br />
把插件中的 $qq_number 和 $qq_password 设置成你的 QQ 号码和密码。</p>
<pre class="brush: php; ">

function smtp_mailer_qqmail($subject,$body){
    $qq_number = &#039;&#039;;
    $qq_password = &#039;&#039;;
</pre>
<p>
这样只要你一发布日志就会自动更新到 Qzone 中。</p>
<p>来源：<a href="http://www.oulan.com/w/?HBZUUCCZ">http://www.qed.cn/?p=613#_</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.oulan.com/w/2010/06/13/wordpress-qzone/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>软件推荐：Precision Helper</title>
		<link>http://www.oulan.com/w/2010/06/13/precision-helper/</link>
		<comments>http://www.oulan.com/w/2010/06/13/precision-helper/#comments</comments>
		<pubDate>Sun, 13 Jun 2010 04:07:07 +0000</pubDate>
		<dc:creator>Ou Lanhui</dc:creator>
				<category><![CDATA[软件推荐]]></category>
		<category><![CDATA[chm]]></category>

		<guid isPermaLink="false">http://www.oulan.com/w/?p=2029</guid>
		<description><![CDATA[如果你是一个软件开发人员，要做帮助文档，那么请用它。
如果你是一个公司管理人员，有很多公司的管理文件要给同事位查，那么请用它。
如果你是一个翻译，那末，请联系他们并为它增加中文版本。我有这个想法，看时间安排和到那时中文出现了没有再定吧。
免费的好软件非常多。尽量不要用盗版。如果你实在喜欢，就买正版吧。现在要介绍的这个软件之前随便推过。正好今天上午同步了MSN Spaces，所以把这个软件再介绍一下。
Precision Helper
这个帮助软件软件支持CHM格式、webhelp格式（注：这个是我想要的）、PDF格式以及单文档HTML格式。
最重要的是，它是免费的。
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;
如果你喜欢，可以资助一下。
]]></description>
			<content:encoded><![CDATA[<p>如果你是一个软件开发人员，要做帮助文档，那么请用它。<br />
如果你是一个公司管理人员，有很多公司的管理文件要给同事位查，那么请用它。<br />
如果你是一个翻译，那末，请联系他们并为它增加中文版本。我有这个想法，看时间安排和到那时中文出现了没有再定吧。<br />
免费的好软件非常多。尽量不要用盗版。如果你实在喜欢，就买正版吧。现在要介绍的这个软件之前随便推过。正好今天上午同步了MSN Spaces，所以把这个软件再介绍一下。<br />
<a href="http://www.oulan.com/w/?8T3one3Z">Precision Helper</a><br />
这个帮助软件软件支持CHM格式、webhelp格式（注：这个是我想要的）、PDF格式以及单文档HTML格式。<br />
最重要的是，它是免费的。<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;<br />
如果你喜欢，可以资助一下。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.oulan.com/w/2010/06/13/precision-helper/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
