<?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/"
	>

<channel>
	<title>Just a leaf ...</title>
	<atom:link href="http://www.aleaf.net/feed" rel="self" type="application/rss+xml" />
	<link>http://www.aleaf.net</link>
	<description>是一种追求，是一种执着，是一种境界……</description>
	<pubDate>Wed, 03 Feb 2010 05:22:02 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.7</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>带图标的ComboBox控件_完整(C#)</title>
		<link>http://www.aleaf.net/archives/2010/02/33.html</link>
		<comments>http://www.aleaf.net/archives/2010/02/33.html#comments</comments>
		<pubDate>Wed, 03 Feb 2010 05:22:02 +0000</pubDate>
		<dc:creator>Aleaf</dc:creator>
		
		<category><![CDATA[编程相关]]></category>

		<category><![CDATA[C#]]></category>

		<category><![CDATA[ComboBox]]></category>

		<category><![CDATA[带图标的ComboBox]]></category>

		<guid isPermaLink="false">http://aleaf.blog.35.cn/?p=33</guid>
		<description><![CDATA[/// **********************************************
///  带图标的 ComboBox控件
///
///  ImageComboBox与相应的 ImageComboBoxItem
///
/// **********************************************
using System;
using System.Drawing;
using System.Windows.Forms;
/// &#60;summary&#62;
/// ImageComboBoxItem
/// &#60;/summary&#62;
public class ImageComboBoxItem : object
{
#region 成员变量
private Color foreColor = Color.FromKnownColor(KnownColor.Transparent);
private bool bold = false;
private int imageIndex = -1;
private object tag = null;
private string text = null;
#endregion
#region 构造函数
public ImageComboBoxItem()
{}
public ImageComboBoxItem(string Text)
{
text = Text;
}
public ImageComboBoxItem(string Text,int ImageIndex) : this(Text)
{
imageIndex = ImageIndex;
}
public ImageComboBoxItem(string Text,int ImageIndex,bool Bold) [...]]]></description>
		<wfw:commentRss>http://www.aleaf.net/archives/2010/02/33.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>Ubuntu操作系统安装使用教程</title>
		<link>http://www.aleaf.net/archives/2009/10/31.html</link>
		<comments>http://www.aleaf.net/archives/2009/10/31.html#comments</comments>
		<pubDate>Fri, 09 Oct 2009 06:18:02 +0000</pubDate>
		<dc:creator>Aleaf</dc:creator>
		
		<category><![CDATA[编程相关]]></category>

		<category><![CDATA[Linux]]></category>

		<category><![CDATA[Ubuntu]]></category>

		<category><![CDATA[使用]]></category>

		<category><![CDATA[安装]]></category>

		<category><![CDATA[操作系统]]></category>

		<category><![CDATA[教程]]></category>

		<guid isPermaLink="false">http://aleaf.blog.35.cn/?p=31</guid>
		<description><![CDATA[Ubuntu是一个流行的Linux操作系统，基于Debian发行版和GNOME桌面环境， 和其他Linux发行版相比，Ubuntu非常易用，和Windows相容性很好，非常适合Windows用户的迁移，预装了大量常用软件，中文版的功能 也较全，支持拼音输入法，预装了Firefox、Open Office、多媒体播放、图像处理等大多数常用软件，一般会自动安装网卡、音效卡等设备的驱动，对于不打游戏不用网银的用户来说，基本上能用的功能都有 了，在Windows操作系统下不用分区即可安装使用，就如同安装一个应用软件那么容易，整个Ubuntu操作系统在Windows下就如同一个大文件一 样，很容易卸载掉。下面我就介绍一下Ubuntu操作系统安装使用的方法，供Ubuntu新手参考，希望能起到Linux扫盲的作用。
下载Ubuntu
Ubuntu有三个版本，分别是桌面版（Desktop Edition），服务器版（Server Edition），上网本版（Netbook Remix），普通桌面电脑使用桌面版即可，下载地址请点这里，32 位CPU请选择32bit version，上网本则可下载Netbook Remix，目前Ubuntu已经占据三分之一的上网本市场，仅次于WIndows XP系统。Google的Chrome操作系统强有力的对手就是Ubuntu Netbook Remix。
目前最新的版本是9.04版，下载后的文件名是ubuntu-9.04-desktop-i386.iso，大小是698M，通过迅雷下载非常快，大约半个小时左右可以下载完毕。
安装Ubuntu
在Windows下可以不用重新分区，直接像安装一个应用程序那样安装Ubuntu，安装方法是，先使用一个虚拟光驱（例如微软的Windows虚拟光驱）装载ubuntu-9.04-desktop-i386.iso文件，然后运行根目录下的wubi.exe，运行前要将本地磁盘的名字都修改为英文名，否则会出现错误信息“UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-3: ordinal not in range(128)”而无法运行。
运行之后，会出现如下界面，选择“Install inside Windows”即可在Windows下直接安装而无需分区。

接着出现下面的安装界面，选择一个磁盘，然后将语言选择为“Chinese（Simplified）简体中文”，Installation size为Ubuntu环境的总共磁盘大小，然后是登录用户名和密码，设置好了以后就点安装继续。

后面的安装操作很简单，不需要手动干预就可以直接安装好整个操作系统，大部分的硬件驱动都可以自动安装好。提示安装完毕后，重启系统，就可以使用Ubuntu了。
自动登录Ubuntu
Ubuntu默认是每次登录都是要输入用户名和密码的，这是基于安全方面的考虑，不过对于桌面版，大家都习惯自己的电脑能自动登录，类似Windows XP系统那样，通过一些设置可以实现Ubuntu自动登录。设置的方法是：点击“系统”—“系统管理”—“登录窗口” （需要输入管理员密码），然后在“安全”选项页—勾选（启用自动登录），然后在下拉列表里选择自己的用户名。之后Ubuntu就能够自动登录了。
开机自动运行程序
类似Windows的启动菜单，在Linux也可以实现开机自动运行一些命令，比较简单的方法是修改 /etc/rc.local 文件，将需要执行的命令添加进去。
桌面设置
Ubuntu的桌面，默认有两个任务栏，一个在上面，一个在下面，通常习惯Windows的用户喜欢将上面的移到下面，Ubuntu的面板无法拖动，在上面点右键后，可以让其显示在屏幕下端。
桌面背景设置和Windows很类似，在“桌面”上点右键，点更改桌面背景，就可以进行修改设置。
修改root密码
Ubuntu默认的用户并不是root，我们可以通过操作来使用root这个超级管理员帐号，以获得更大的权限。先打开终端，然后执行下面的语句
sudo passwd root
就可以修改超级管理员root的密码，之后就可以使用su命令切换到root用户来执行某些更高权限的操作。
Hosts修改
在Windows下，我们上Twitter等网站都需要修改hosts文件，在Linux下也有hosts文件，文件位于/etc/hosts，使用root用户可以编辑修改这个文件，主机名和IP的格式与Windows的完全相同，例如：
127.0.0.1 localhost
在Ubuntu下安装软件
Ubuntu下的软件安装有几种方式，常用的是deb包的安装方式，deb是debian系列的Linux包管理方式，ubuntu属于debian的派生，也默认支持这种软件安装方式，当下载到一个deb格式的软件后，直接在界面上就可以安装。
另一种常见的安装方式是源代码编译安装，很多软件会提供了源代码给最终用户，用户需要自行编译安装，先使用tar将源代码解压缩到一个目录下，然后进入这个目录，执行以下三条命令：
./configure
make
sudo make install
执行完成后，即可完成软件的编译和安装。
还有一种方式是apt-get的安装方法，APT是Debian及其衍生发行版的软件包管理器，APT可以自动下载，配置，安装二进制或者源代码格式的软件包，因此简化了Unix系统上管理软件的过程。常用的安装命令是：
sudo apt-get install 软件名
sudo apt-get remove 软件名
Firefox浏览器的更新
Ubuntu安装完成后会自动安装一个Firefox浏览器，遗憾的是这个Firefox版本通常较低，例如Ubuntu 9.04会安装Firefox 3.0，不过我们可以想办法下载最新的Firefox覆盖掉老版本Firefox，具体方法是，先上Firefox官方网站下载最新的Linux版本 Firefox，然后将其解压缩到某一个目录下，例如firefox目录，进入终端，到这个目录的父目录，执行下面的语句：
sudo cp -r firefox /usr/lib/firefox-3.5.2
sudo mv /usr/bin/firefox /usr/bin/firefox.old
sudo [...]]]></description>
		<wfw:commentRss>http://www.aleaf.net/archives/2009/10/31.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>初识Python</title>
		<link>http://www.aleaf.net/archives/2009/10/24.html</link>
		<comments>http://www.aleaf.net/archives/2009/10/24.html#comments</comments>
		<pubDate>Fri, 09 Oct 2009 06:14:37 +0000</pubDate>
		<dc:creator>Aleaf</dc:creator>
		
		<category><![CDATA[编程相关]]></category>

		<category><![CDATA[Python]]></category>

		<category><![CDATA[Ubuntu]]></category>

		<category><![CDATA[编程]]></category>

		<guid isPermaLink="false">http://aleaf.blog.35.cn/?p=24</guid>
		<description><![CDATA[接触Python是在调试Ubuntu操作系统时开始。因为安装Ubuntu默认自带了Python开发环境的，再加上网上一些文章写得让人觉得Python似乎是最完美的一种编程语言。
所以决定一探究竟……
]]></description>
		<wfw:commentRss>http://www.aleaf.net/archives/2009/10/24.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>接触Linux操作系统——Ubuntu</title>
		<link>http://www.aleaf.net/archives/2009/10/22.html</link>
		<comments>http://www.aleaf.net/archives/2009/10/22.html#comments</comments>
		<pubDate>Fri, 09 Oct 2009 06:13:02 +0000</pubDate>
		<dc:creator>Aleaf</dc:creator>
		
		<category><![CDATA[编程相关]]></category>

		<category><![CDATA[Linux]]></category>

		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://aleaf.blog.35.cn/?p=22</guid>
		<description><![CDATA[早有探索Linux之心，最近重装系统制作Windows安装盘，为了调试，装了个VMWare。所以想顺便装个Linux系统玩玩，Ubuntu似乎比较流行了，所以就选它了。
……
]]></description>
		<wfw:commentRss>http://www.aleaf.net/archives/2009/10/22.html/feed</wfw:commentRss>
		</item>
		<item>
		<title>[转]PHP5.3中关于VC9和VC6以及Thread Safe和Non Thread Safe版本选择的问题</title>
		<link>http://www.aleaf.net/archives/2009/10/26.html</link>
		<comments>http://www.aleaf.net/archives/2009/10/26.html#comments</comments>
		<pubDate>Thu, 08 Oct 2009 01:52:17 +0000</pubDate>
		<dc:creator>Aleaf</dc:creator>
		
		<category><![CDATA[编程相关]]></category>

		<category><![CDATA[PHP5.3]]></category>

		<category><![CDATA[Thread Safe]]></category>

		<guid isPermaLink="false">http://aleaf.blog.35.cn/?p=26</guid>
		<description><![CDATA[最近在PHP官网上看到又有新版的PHP下载了，于是上去找找For Windows的版本，可是一看确傻眼了，一共给了四个版本，VC9 x86 Non Thread Safe、VC9 x86 Thread Safe、VC6 x86 Non Thread Safe、VC6 x86 Thread Safe，这让我这个菜鸟头疼啊，还好PHP官网提供下载的地方左边有个英文choose我看懂了，我估摸着就是如何来选择版本的意思吧，于是开始查字典 及上网查找，终于看明白了具体意思，拿来做个备忘先。
一、如何选择PHP5.3的VC9版本和VC6版本
VC6版本是使用Visual Studio 6编译器编译的，如果你的PHP是用Apache来架设的，那你就选择VC6版本。
VC9版本是使用Visual Studio 2008编译器编译的，如果你的PHP是用IIS来架设的，那你就选择VC9版本。
二、如何选择PHP5.3的Thread Safe和Non Thread Safe版本

先从字面意思上理解，Thread Safe是线程安全，执行时会进行线程（Thread）安全检查，以防止有新要求就启动新线程的CGI执行方式而耗尽系统资源。Non Thread Safe是非线程安全，在执行时不进行线程（Thread）安全检查。
再来看PHP的两种执行方式：ISAPI和FastCGI。
ISAPI执行方式是以DLL动态库的形式使用，可以在被用户请求后执行，在处理完一个用户请求后不会马上消失，所以需要进行线程安全检查，这样来提高程序的执行效率，所以如果是以ISAPI来执行PHP，建议选择Thread Safe版本；
而FastCGI执行方式是以单一线程来执行操作，所以不需要进行线程的安全检查，除去线程安全检查的防护反而可以提高执行效率，所以，如果是以FastCGI来执行PHP，建议选择Non Thread Safe版本。
原文地址：http://www.htmer.com/article/716.htm
]]></description>
		<wfw:commentRss>http://www.aleaf.net/archives/2009/10/26.html/feed</wfw:commentRss>
		</item>
	</channel>
</rss>
