﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>IT博客-半年之后</title><link>http://www.cnitblog.com/wroxman/</link><description /><language>zh-cn</language><lastBuildDate>Wed, 29 Apr 2026 05:59:01 GMT</lastBuildDate><pubDate>Wed, 29 Apr 2026 05:59:01 GMT</pubDate><ttl>60</ttl><item><title>FreeBSD 6.1下图形界面KDE和输入法SCIM安装</title><link>http://www.cnitblog.com/wroxman/archive/2006/08/25/15949.html</link><dc:creator>waiter</dc:creator><author>waiter</author><pubDate>Fri, 25 Aug 2006 08:04:00 GMT</pubDate><guid>http://www.cnitblog.com/wroxman/archive/2006/08/25/15949.html</guid><wfw:comment>http://www.cnitblog.com/wroxman/comments/15949.html</wfw:comment><comments>http://www.cnitblog.com/wroxman/archive/2006/08/25/15949.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/wroxman/comments/commentRss/15949.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/wroxman/services/trackbacks/15949.html</trackback:ping><description><![CDATA[# sysinstall

选择[Configure]->[Distributions]->[X.Org],如下图:
点击在新窗口中浏览此图片
接下来会出现一个菜单让你选择所需要安装的X.Org的包,如下图所示,请进入每一个选项里选取ALL.
点击在新窗口中浏览此图片

点击在新窗口中浏览此图片
接着选择Exit回到选择安装来源．您可以选择ＣＤ／ＤＶＤ为安装本源，放入第一张ＣＤ即可开始安装．

安装ＫＤＥ：
leo# sysinstall
选择[Configure]->[Packages]->[kde],选择kde-3.5.1如下图:
点击在新窗口中浏览此图片
选择ＯＫ，然后Install会有提示要求您放第二张光盘．这里需要等比较长的时间．安装完就退出．

运行
xorgcfg –textmode
点击在新窗口中浏览此图片
配置xorg
本机上所生成的/etc/X11/xorg.conf文件内容如下
leo# cat /etc/X11/xorg.conf
Section "ServerLayout"
       Identifier     "Layout0"
       Screen      0  "Screen0" 0 0
       InputDevice    "Keyboard0" "CoreKeyboard"
       InputDevice    "Mouse0" "CorePointer"
EndSection

Section "Files"
EndSection

Section "Module"
       Load  "freetype"
       # Load "xtt"
       Load  "extmod"
       Load  "glx"
       Load  "dri"
       Load  "dbe"
       Load  "record"
       Load  "xtrap"
       Load  "type1"
       Load  "speedo"
EndSection

Section "InputDevice"
       Identifier  "Mouse0"
       Driver      "mouse"
       Option      "Protocol" "Auto"
       Option      "Emulate3Buttons"
       Option      "Device" "/dev/sysmouse"
EndSection

Section "InputDevice"
       Identifier  "Keyboard0"
       Driver      "kbd"
       Option      "XkbModel" "pc101"
       Option      "XkbLayout" "us"
EndSection

Section "Monitor"

### Comment all HorizSync and VertSync values to use DDC:
       Identifier   "Monitor0"
### Comment all HorizSync and VertSync values to use DDC:
       HorizSync    31.5 - 57.0
       VertRefresh  50.0 - 90.0
EndSection

Section "Device"
       Identifier  "Card0"
       Driver      "vmware"
EndSection

Section "Screen"
       Identifier "Screen0"
       Device     "Card0"
       Monitor    "Monitor0"
       DefaultDepth     24
       SubSection "Display"
               Viewport   0 0
               Depth     24
               Modes    "1024x768" "800x600"
       EndSubSection
EndSection

在 /root 目录下 编辑 .xinitrc 文件：
加入下面行
exec /usr/local/bin/startkde
然后执行
startx
即可进入ＫＤＥ
点击在新窗口中浏览此图片

接着我们要将KDE 汉化，如果要在X-Window 中看到中文的菜单，必须先装中文字体kcfont（国乔字体）及arphicttf(文鼎字体)，以及中文信息档(i18n)
# cd /usr/ports/chinese/kcfonts
# make install clean
# cd /usr/ports/chinese/arphicttf
# make install clean
# cd /usr/ports/chinese/kde3-i18n-zh_CN
# make install clean
# cd /usr/ports/chinese/koffice-i18n-zh_CN
# make install clean
接着编辑/etc/X11/xorg.conf
leo# vi /etc/X11/xorg.conf
在Section "Files"之间加入下面三行，以使X-Window能找到正确的字体路径,如下：
Section "Files"
       FontPath     "/usr/X11R6/lib/X11/fonts/TrueType"
       FontPath     "/usr/X11R6/lib/X11/fonts/local"
       FontPath     "/usr/X11R6/lib/X11/fonts/misc"
EndSection
更改保存后进入KDE。
找到Setting->Desktop Setting Wizard进行设置：
点击在新窗口中浏览此图片

按Next一直到最后即可。
如果您想要有Windows的字体，可以到将Win上面的字体COPY到下面的目录
#cd /usr/X11R6/lib/X11/fonts/TrueType
然后打开“控制中心”->外观和主题->字体，里面设置你所需要的字体和字体大小。我是把windows下面的simsun.ttc和 tohoma.ttf拷贝到了FreeBSD上面，然后应用windows的字体，这样感觉比较舒服，毕竟是平时看惯了windows的字体了。看其它字体感觉怪怪的。
-rw-r--r--  1 root  wheel  10507340 May 14 19:07 simsun.ttc
-rw-r--r--  1 root  wheel    379856 May 14 19:07 tahoma.ttf
点击在新窗口中浏览此图片
中文输入法安装:
cd /usr/ports/chinese/scim-tables/
make install

cat >> /etc/csh.cshrc << OK
setenv LANG zh_CN.eucCN
setenv LC_CTYPE zh_CN.eucCN
setenv XMODIFIERS @im=SCIM
setenv GTK_IM_MODULE scim
OK
另外在进入X之前需要执行(在~/.xinitrc中加入）
exec scim -d &
此行一定要放在exec /usr/local/bin/startkde之前
leo# cat /root/.xinitrc
exec scim -d &
exec /usr/local/bin/startkde

重新启动KDE就可以输入中文了。<img src ="http://www.cnitblog.com/wroxman/aggbug/15949.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/wroxman/" target="_blank">waiter</a> 2006-08-25 16:04 <a href="http://www.cnitblog.com/wroxman/archive/2006/08/25/15949.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>PORTS安装软件的时候忘啦安装部分模块该怎么办</title><link>http://www.cnitblog.com/wroxman/archive/2006/08/25/15948.html</link><dc:creator>waiter</dc:creator><author>waiter</author><pubDate>Fri, 25 Aug 2006 08:03:00 GMT</pubDate><guid>http://www.cnitblog.com/wroxman/archive/2006/08/25/15948.html</guid><wfw:comment>http://www.cnitblog.com/wroxman/comments/15948.html</wfw:comment><comments>http://www.cnitblog.com/wroxman/archive/2006/08/25/15948.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/wroxman/comments/commentRss/15948.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/wroxman/services/trackbacks/15948.html</trackback:ping><description><![CDATA[make showconfig
make deinstall clean
make rmconfig
make install clean<img src ="http://www.cnitblog.com/wroxman/aggbug/15948.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/wroxman/" target="_blank">waiter</a> 2006-08-25 16:03 <a href="http://www.cnitblog.com/wroxman/archive/2006/08/25/15948.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title> freeBSD 6.1 安装</title><link>http://www.cnitblog.com/wroxman/archive/2006/08/25/15947.html</link><dc:creator>waiter</dc:creator><author>waiter</author><pubDate>Fri, 25 Aug 2006 08:01:00 GMT</pubDate><guid>http://www.cnitblog.com/wroxman/archive/2006/08/25/15947.html</guid><wfw:comment>http://www.cnitblog.com/wroxman/comments/15947.html</wfw:comment><comments>http://www.cnitblog.com/wroxman/archive/2006/08/25/15947.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/wroxman/comments/commentRss/15947.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/wroxman/services/trackbacks/15947.html</trackback:ping><description><![CDATA[
[code]# cd /usr/ports/net/cvsup-without-gui
如果你没有装PORTS的话,请运行/stand/sysinstall
选configure-->distributions-->ports,然后选OK,系统会自动完成安装

# make install clean

安装完之后

# cp /usr/share/examples/cvsup/ports-supfile /etc
# cp /usr/share/examples/cvsup/stable-supfile /etc
# chmod 755 /etc/ports-supfile
# chmod 755 /etc/stable-supfile

注:chmod 数字前加0代表目录,不加0代表文件
# vi /etc/ports-supfile
修改其中的*default host=CHANG_THIS.FreeBSD.org
为*default host=cvsup.freebsdchina.org
# vi /etc/stable-supfile
修改其中的*default host=CHANG_THIS.FreeBSD.org
为*default host=cvsup.freebsdchina.org
修改*default release=cvs tag=RELENG_4 为
*default release=cvs tag=RELENG_5_3

# /usr/local/bin/cvsup -g -L 2 /etc/ports-supfile
# /usr/local/bin/cvsup -g -L 2 /etc/stable-supfile


编译内核
[code]# cd /usr/src/sys/i386/conf/
# cp CURRENT MYKERNEL
# ee MYKERNEL

优化修改部分设置保存
# config MYKERNEL
# cd /usr/src  
# make -j 80 buildworld
# make -j 80 buildkernel KERNCONF=MYKERNEL  
# make -j 80 installkernel KERNCONF=MYKERNEL  
# make -j 80 installworld
[/code]设置Xwindow

sysinstall
光盘安装也可

如果需要从 Ports Collection 编译和安装 Xorg：


# cd /usr/ports/x11/xorg
# make install clean
想要从 package 安装 Xorg， 简单地输入下面的命令：


# pkg_add -r xorg

配置 X11
　　配置 X11 需要几步。 第一步是以超级用户的身份建立初始的配置文件：


# Xorg -configure

这会在 /root 中生成一个叫做 xorg.conf.new 的配置文件 (无论您使用 su(1) 或直接登录，都会改变默认的 $HOME 目录变量)。
下一步是测试现存的配置文件， 以确认 Xorg 能够同系统上的图形设备正常工作。 要完成这个任务，只需：


# Xorg -config xorg.conf.new

如果用户看到一个黑灰的格子和一个 X 形的鼠标指针，那么配置就是成功的。要退出测试，只要同时键入 Ctrl+Alt+Backspace。

注意: 如果鼠标工作不正常， 则需要先配置它
如果一切准备停当， 就可以把配置文件放到公共的目录中了。

# cp xorg.conf.new /etc/X11/xorg.conf

安装字体等
安装KDE 或GNOME
以上之一添加到XWINDOW

echo "exec startkde" >~/.xinitrc
 //KDE添加
或者

echo "/usr/X11R6/bin/gnome-session" > ~/.xinitrc



startx
应该就有相应东东<img src ="http://www.cnitblog.com/wroxman/aggbug/15947.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/wroxman/" target="_blank">waiter</a> 2006-08-25 16:01 <a href="http://www.cnitblog.com/wroxman/archive/2006/08/25/15947.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>苹果电脑创始人乔布斯：讲三个我自己的故事</title><link>http://www.cnitblog.com/wroxman/archive/2006/08/18/15507.html</link><dc:creator>waiter</dc:creator><author>waiter</author><pubDate>Fri, 18 Aug 2006 06:19:00 GMT</pubDate><guid>http://www.cnitblog.com/wroxman/archive/2006/08/18/15507.html</guid><wfw:comment>http://www.cnitblog.com/wroxman/comments/15507.html</wfw:comment><comments>http://www.cnitblog.com/wroxman/archive/2006/08/18/15507.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/wroxman/comments/commentRss/15507.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/wroxman/services/trackbacks/15507.html</trackback:ping><description><![CDATA[　　在全球科技界，我只有一个偶像，他不是比尔·盖茨，而是斯蒂文·乔布斯。如果说盖茨让微软成为传奇，那么乔布斯本人就是传奇。他创建了苹果电脑，引领了电脑时尚的潮流;他创立了皮克斯，拨动了娱乐业的风向;他创造了iPod，又通过它影响了不只一代人的生活方式。甚至可以说，没有他，就没有我博客左上角的新歌推荐，因为那些新歌都是我下载到iPod后通过汽车音响在车上听到的。

　　正好，前两天我的一个商学院的同学给我发来了乔布斯去年在斯坦福大学毕业典礼上的讲话。她在邮件里说，如果你还没看到这篇讲话，你应该看，因为它是不应该被错过的。我看了后，非常同意她的说法。我想你们也不应该错过。

　　下面是演讲原文的节选。

　　今天我非常荣幸来参加你们的毕业典礼。我自己从来没有从大学毕业，所以今天应该是我距离毕业典礼最近的一次。今天我只想给你们讲三个我生活中的真实故事。仅此而已，没有什么长篇大论，就是三个故事。

　　第一个故事是关于把点连成线。

　　十七岁的时候，我进了大学。当时我很天真，选了一所学费几乎和斯坦福大学一样昂贵的学校，当工人的养父母倾其所有的积蓄为我支付了大学学费。读了六个月后，我却看不出上学有任何意义。我既不知道自己这一生想干什么，也不确定大学能帮我弄明白自己想干什么。所以，我决定退学。当年做出这个决定的时候心里还有点打鼓，但现在往回看，那却是我有生以来做出的最好的决定之一。从退学那一刻起，我就可以不再选那些我毫无兴趣的必修课，而开始去旁听一些在我看来更有意思的课。

　　当时，我所在的学校的书法课大概是全国最好的。校园里所有的公告栏和每个抽屉标签上的字都写得非常漂亮。我退学后不用正常上课了，所以我决定选一门书法课，学学怎么写好字。

　　当时我并不指望书法在以后的生活中能有什么实用价值。但是，十年之后，我们在设计第一台 Macintosh 计算机时，以前学的书法一下子浮现在我眼前。于是，我们把这些东西全都设计进了计算机中。这是第一台有这么漂亮的文字版式的计算机。要不是我当初在大学里偶然选了这么一门课，Macintosh 计算机绝不会有那么多种印刷字体或间距安排合理的字号。要不是退了学，我也不会碰巧选了那门书法课。当然，我在大学里不可能把当时的点向前延伸，连成一条线;但是现在回过头去看，那条线却无比清晰。

　　你们现在同样不可能从现在这个点上连出通向未来的那一条线。只有当你回头看时，才会发现这些过去的点其实已经画出了那条线。所以，要相信每一个点迟早都会连接到一起。

　　第二个故事是关于好恶与得失。

　　幸运的是，我在很小的时候就发现自己喜欢做什么。我在 20 岁时和沃兹在我父母的车库里办起了苹果公司。我们干得很卖力，十年后，苹果公司就从车库里我们两个人发展成为一个市值 20 亿美元、拥有4000多名员工的大企业。而在此之前的一年，我们刚推出了我们Macintosh电脑，当时我刚过而立之年。可后来，我被解雇了。你怎么会被自己办的公司解雇呢?是这样，随著苹果公司越做越大，我们聘请了一位我认为非常有才华的人与我一道管理公司。在开始的一年多里，一切都很顺利。可是，随后我俩对公司前景的看法开始出现分歧，最后我俩反目了。这时，董事会站在了他那一边，所以在30 岁那年，我离开了公司，而且这件事闹得满城风雨。我成年后的整个生活重心都没有了，这使我心力交瘁。

　　一连几个月，我真的不知道应该怎么办。这次失败弄得沸沸扬扬的，我甚至想过逃离硅谷。但是，渐渐地，我开始有了一个想法——我仍然热爱我过去做的一切。在苹果公司发生的这些风波丝毫没有改变这一点。于是，我决定从头开始。

　　虽然当时我并没有意识到，但事实证明，被苹果公司炒鱿鱼是我一生中碰到的最好的事情。尽管前景未卜，但从头开始的轻松感取代了保持成功的沉重感。这使我进入了一生中最富有创造力的时期之一。

　　在此后的五年里，我开了一家名叫 NeXT 的公司和一家叫Pixar的公司，我还爱上一位了不起的女人，后来娶了她。Pixar公司推出了世界上第一部用电脑制作的动画片《玩具总动员》，它现在是全球最成功的动画制作室。世道轮回，苹果公司买下 NeXT 后，我又回到了苹果公司，我们在 NeXT 公司开发的技术成了苹果公司这次重新崛起的核心。我和劳伦娜也建立了美满的家庭。

　　我确信，如果不是被苹果公司解雇，这一切决不可能发生。这是一剂苦药，可我认为苦药利于病。有时生活会当头给你一棒，但不要灰心。我坚信让我一往无前的唯一力量就是我热爱我所做的一切。所以，一定得知道自己喜欢什么，选择爱人时如此，选择工作时同样如此。工作将是生活中的一大部分，让自己真正满意的唯一办法，是做自己认为是有意义的工作;做有意义的工作的唯一办法，是热爱自己的工作。你们如果还没有发现自己喜欢什么，那就不断地去寻找，不要急于做出决定。就像一切要凭着感觉去做的事情一样，一旦找到了自己喜欢的事，感觉就会告诉你。

　　我的第三个故事是关于死亡。

　　17 岁那年，我读到过这样一段话，大意是:“如果你把每一天都当作生命的最后一天过，总有一天你的假设会成为现实。”我记住了这句话，从那时起，33 年过去了，我每天早晨都对著镜子扪心自问: “假如今天是我生命中的最后一天，我还会去做今天要做的事吗?”如果一连许多天我的回答都是“不”，我知道自己应该有所改变了。

　　大约一年前，我被诊断患了癌症。那天早上七点半，我做了一次扫描检查，结果清楚地表明我的胰腺上长了一个瘤子，可那时我连胰腺是什么还不知道呢!医生告诉我说，几乎可以确诊这是一种无法治愈的恶性肿瘤，我最多还能活 3 到 6 个月。

　　我整天都想着诊断结果。到了晚上，我做了一次组织切片检查，他们把一个内窥镜通过喉咙穿过我的胃进入肠子，用针头在胰腺的瘤子上取了一些细胞组织。当时我用了麻醉剂，陪在一旁的妻子后来告诉我，医生在显微镜里看了细胞之后叫了起来，原来这是一种少见的可以通过外科手术治愈的恶性肿瘤。我做了手术，现在好了。

　　这是我和死神离得最近的一次，我希望也是今后几十年里最近的一次。有了这次经历之后，现在我可以更加实在地和你们谈论死亡，那就是:谁都不愿意死。即使是那些想进天堂的人也不会愿意为了进天堂而去死。然而，死亡是我们共同的归宿，没人能摆脱。我们注定会死，因为死亡很可能是生命最好的一项发明。它推进生命的新辰换代。现在，你们就是新的，但在不久的将来，你们也会逐渐成为旧的，也会被淘汰。

　　你们的时间都有限，所以不要按照别人的意愿去活，这是浪费时间。不要让别人观点的聒噪声淹没自己的心声。最主要的是，要有跟着自己感觉和直觉走的勇气。无论如何，感觉和直觉早就知道你到底想成为一个什么样的人，其它的都不重要。<img src ="http://www.cnitblog.com/wroxman/aggbug/15507.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/wroxman/" target="_blank">waiter</a> 2006-08-18 14:19 <a href="http://www.cnitblog.com/wroxman/archive/2006/08/18/15507.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>这年头~~~~</title><link>http://www.cnitblog.com/wroxman/archive/2006/08/03/14623.html</link><dc:creator>waiter</dc:creator><author>waiter</author><pubDate>Thu, 03 Aug 2006 06:38:00 GMT</pubDate><guid>http://www.cnitblog.com/wroxman/archive/2006/08/03/14623.html</guid><wfw:comment>http://www.cnitblog.com/wroxman/comments/14623.html</wfw:comment><comments>http://www.cnitblog.com/wroxman/archive/2006/08/03/14623.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/wroxman/comments/commentRss/14623.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/wroxman/services/trackbacks/14623.html</trackback:ping><description><![CDATA[这 年 头

这年头，大棚把季节搞乱，小姐把辈份搞乱，关系把程序搞乱，级别把能力搞乱，公安把秩序搞乱，金钱把官场搞乱，手机把家庭搞乱！ 

这年头，女人漂亮的不下厨房，下厨房的不温柔，温柔的没主见，有主见的没女人味，有女人味的乱花钱，不乱花钱的不时尚，时尚的不放心，放心的没法看！ 

这年头，老婆像小灵通经济实惠但限本地使用，二奶像中国电信安全固定但带不出门，小蜜像中国移动使用方便但话费太贵。情人像中国联通优雅新潮但常不在服务区！ 

这年头，一哥们说北京地铁拥挤不堪他怀孕的老婆竟被挤流产了；昨天他问上海的地铁是不是好些，上海的哥们说更糟：上个月他老婆乘地铁竟然被挤怀孕了！ 

这年头，党政干部十大特征：一请就到，一喝就高，一捧就傲，一求就敲，一给就捞，一脱就要，一累就叫，一批就跳，一查就倒！ 

这年头，干部是这样死的：天天开会坐死，领导高调哄死，民主评论整死，事事汇报烦死，择优提拔骗死，混蛋同僚害死，上级检查累死，工资差别气死，老婆年轻累死！ 

这年头，教授摇唇鼓舌，四处赚钱，越来越像商人；商人现身讲坛，著书立说，越来越像教授。医生见死不救，草菅人命，越来越像杀手；杀手出手麻利，不留后 患，越来越像医生。明星卖弄风骚，给钱就上，越来越像妓女；妓女楚楚动人，明码标价，越来越像明星。警察横行霸道，欺软怕硬，越来越像地痞；地痞各霸一 方，敢做敢当，越来越像警察。流言有根有据，基本属实，越来越像新闻；新闻捕风捉影，随意夸大，越来越像流言。 


这年头，军委领导说解放军的工资如果翻四倍可以打美国，翻三倍可以打日本，翻两倍可以打台湾，翻一倍可以回家打老婆，目前的工资回家只能被老婆打！ 

这年头，完美的人生就是住英国的房子，戴瑞士手表，拿美国工资，娶韩国女人，嫖俄罗斯女人，开德国轿车，喝法国红酒，雇菲律宾女佣，做共产党的官！ 

这年头，苦干实干，做给天看；东混西混，一帆风顺；任劳任怨，永难如愿；会捧会献，杰出贡献；尽职尽责，必遭指责；推托栽赃，邀功领赏！ 

这年头，男人的小康就是有一所像样的小房，有一辆时尚的小车，有一笔吃喝的小钞，有一位顾家的小太，有一门管用的小“炮”，有一群擦炮的小蜜！ 

这年头，为官之道就是为领导干一百件好事也不如与领导一起干一件坏事，领导带你一起干了一件坏事那肯定有一百件好事等着你！ 

这年头，说河南人诈骗，广东人笑了；说河南人造假，浙江人笑了；说河南人斤斤计较，上海人笑了；说河南人夸夸其谈，北京人笑了；说河南人傻，诸葛亮笑了！ 

这年头，海关数学等式为：专家+实干=白忙；立正+稍息=管理；唱歌+跳舞=业务；听话+擦鞋=能力；大话+做秀=成绩；年龄+糊涂=可靠；军龄+关龄=任用。 

这年头，海关实现了十化：关长贵族化，关员奴隶化，考核经常化，上班日夜化，加班无偿化，挨训习惯化，晋升内定化，检查形式化，待遇渲染化，加薪？他妈的神话！ 

这年头，生命在于运动，关系在于走动，感情在于心动，亲吻在于感动，拥抱在于激动，抚摸在于颤动，男方在于抽动，女方在于扭动，高潮在于互动，射精最好别动！ 

这年头，请看新纤夫的爱：党委坐船头，政府在岸上走，人大一步一回头，政协晃悠悠，工会泪往心里流，团委只盼日落西山头，好把妇联亲个够！ 

这年头，河南人好生郁闷：好不容易有座山，却是平顶山；好不容易有家酒店，却是驻馬店；好不容易想结婚，自己却洛了“阳”；好不容易找个老婆，却被人家开了“封”！ 

这年头，接听电话声音渐渐小对方是领导，声音渐渐大对方是部下，一听就发燥对方拨错号，笑得不停歇那是女同学，半天哼一下老婆在训话，悄悄避开人对方是情人！ 

这年头，当官也不容易：体质弱的累死，心胸窄的气死，智商低的悉死，胆量小的吓死，酒量小的喝死，性欲差的羞死，性欲强的那可真是舒服死！ 

这年头，教育好子女是生命延续的重要代表，理顺好领导安排好部下是权力重要代表，办好朋友的事是人生价值的重要代表！ 

这年头，人有钱有时间有个好身体，绝品；人有钱无病无时间，珍品；人无钱无病有时间，上品；人无钱无病无时间，次品；人无钱无时间有脾气，废品！ 

这年头，警察接到五条禁令：禁止和美女睡觉兴奋致死！禁止和情人睡觉醉生梦死！禁止和丑女睡觉烦躁致死！禁止和小姐睡觉劳累致死！禁止和老婆睡觉整夜装死！ 

这年头，干部素质要求你：心中有小平，袋中有文凭，对上能摆平，对下能铲平，道德没水平，金库能填平，左手拿酒瓶，右手握药瓶，家里有醋瓶，外面有花瓶！ 

这年头，构建和谐社会要注意在自然界不要和天斗，在国际社会不要和美国斗，在路上不要和军车斗，在单位不要和领导斗，在家里不要和老婆斗！ 

这年头，听说要去打台湾，一老红军把计献：派三万人马足矣：派一万小姐过去把他奶奶的国军身体搞垮，派一万河南老乡过去把他娘的经济搞乱，派一万领导干部过去把他妈的国库折腾干！ 

这年头，十类人不宜做大官：1胆小，2话多，3钱少，4关系差，5酒量小，6才华横溢，7学历太高，8疾恶如仇，9性功能差，10有姿色不肯献身。 

这年头，开展批评太难了：批评老婆她就乱跑，批评老公他就乱搞！批评上级就官位难保，批评同级就关系难搞，批评自己就自寻烦恼，批评下级就选票减少！ 

这年头，各级领导虽然都位高权重但对群众要求还是蛮关心的。凡男人求领导办事，领导都会热情地说：你怎么不提钱（前）来讲嘛！凡女人求领导办事，领导总是推托说：我很忙，“日”后再说！ 

这年头，三个代表在基层：如果你受贿代表你还在位，如果你嫖娼代表你还健康，如果你养小代表家中红旗还没倒！ 

这年头，喝酒像喝汤，此人是工商；喝酒不用劝，工作在法院；举杯一口干，必定是公安；八两都不醉，这人是国税；起步就一斤，准是解放军！ 

这年头，老婆是家情人是花，工资给家奖金送花，病了回家好了看花，离不了的是家忘不了的是花，常回家看看别忘了浇花！ 

这年头，女人的基本配置是：身边站个魁梧的，怀里搂个功夫的，家里待个赚钱的，远方有个思念的，梦里藏个初恋的，偶尔来个温柔的，老了混个懂保健的。 

这年头，男人认为情人是手表越漂亮越好，小蜜是怀表越隐秘越好，小姐是电子表越新鲜越好，老婆是自动表不上弦照样跑，各种表都想要只是时间要掌握好！ 

这年头，到处都是错别字：植树造零，白收起家，勤捞致富，选霸干部，任人为闲，择油录取，得财兼币，检查宴收，大力支吃，为民储害，提钱释放，攻官小姐。 

这年头，结婚叫入网，重婚叫一卡双号，婚外恋叫呼叫转移，情人多叫移动梦网，离婚叫销号，分居叫停机留号，女人再婚叫过户。男人再婚叫补卡，互换叫联通。 

这年头，…… <img src ="http://www.cnitblog.com/wroxman/aggbug/14623.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/wroxman/" target="_blank">waiter</a> 2006-08-03 14:38 <a href="http://www.cnitblog.com/wroxman/archive/2006/08/03/14623.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>ASP.FSO-ASP中FSO的神奇功能&lt;2&gt;</title><link>http://www.cnitblog.com/wroxman/archive/2006/08/01/14510.html</link><dc:creator>waiter</dc:creator><author>waiter</author><pubDate>Tue, 01 Aug 2006 05:49:00 GMT</pubDate><guid>http://www.cnitblog.com/wroxman/archive/2006/08/01/14510.html</guid><wfw:comment>http://www.cnitblog.com/wroxman/comments/14510.html</wfw:comment><comments>http://www.cnitblog.com/wroxman/archive/2006/08/01/14510.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/wroxman/comments/commentRss/14510.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/wroxman/services/trackbacks/14510.html</trackback:ping><description><![CDATA[�

Dim objFolder
Dim strSearchText
Dim objFSO

strSearchText = Request.Form("SearchText") < -- The search string
' create the FSO and Folder objects
Set fso = Server.CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder(Server.MapPath("/"))

Search objFolder

　　 上面的代码简单地初始化变量，Search函数执行搜索功能，描述如下：

Function Search(objFolder)

Dim objSubFolder

'loop through every file in the current
folder

For Each objFile in objFolder.Files

Set objTextStream = objFSO.OpenTextFile(objFile.Path,1) < -- For Reading

'read the file's contents into a
variable

strFileContents = objTextStream.ReadAll

'if the search string is in the file, then
write a link

' to the file

If InStr(1, strFileContents, strSearchText, 1) then

Response.Write "< A HREF=""/" & objFile.Name & _

""">" & objFile.Name & "< /A>< BR>"

bolFileFound = True

End If

objTextStream.Close

Next

'Here's the recursion part - for each

' subfolder in this directory, run the Search function again

For Each objSubFolder in objFolder.SubFolders

Search objSubFolder

Next

End Function

　　 为了能打开文件，FSO需要实际的文件路径，而不是web路径。比如，是c:inetpubwwwroot empindex.html, 而不是
www.enfused.com/temp/index.html 或者 /temp/index.html。 为了将后者转换为前者，使用Server.MapPath
("filename"), filename表示web路径名。

　　 上面的代码将在你指定的初始目录下的文件夹的每一个子目录中执行，在这里，初始目录是指web根目录“/”。然后
就简单地打开目录下的每一个文件，看看其中是否包含指定的字符串，如果找到字符串就显示那个文件的链接。

　　 注意，随着文件和子目录数量的增加，搜索花费的时间也将增加。如果需要繁重的搜索工作，建议你采取其他的方
法，比如微软公司的索引服务器Index Server。

　　 到此，你对FSO可能已经有了很好的体会。让我们再深入研究一步，来解决更复杂的难题。

　　 首先，你可能希望对文件改名。为了跟踪所有的文档，你将要重新命名它们以便唯一，这样就可以被系统容易地区
别。很不幸，FSO不允许简单的文件改名操作，所以我们不得不修改一下。

< %
' create the fso object
set fso = Server.Createobject("Scripting.FileSystemObject")
path = "c: emp est.txt"
strDate = Replace(Date(), "/", "")
strDir = "c:inetpubwwwrootarticles" & strDate
strNewFileName = Hour(Now) & "_" & Minute(Now) & "_" &
second(Now) & ".html"

' open the old file
set file = fso.opentextfile(path, 1) < -- For reading
strText = file.readall
set file = nothing

' check for and/or create folder
if not fso.folderexists(Server.MapPath(strDir)) then
set f = fso.CreateFolder(Server.MapPath(strDir))
else
set f = fso.GetFolder(Server.MapPath(strDir))
end if

' create and write new file
set file = fso.Createtextfile(f.path & "" & strNewFileName)
file.write(strText)
set f = nothing
file.close
set file = nothing

' delete the old file
fso.DeleteFile(path & "" & rst("FileName") & i)
' clean up
set fso = nothing
%>

　　 FSO能力的不足在这里却成了优势，我们可以一次执行2步。首先，打开文件并读入文件的内容。假设这里要创建一个
唯一的文件夹和一个唯一的文件来存储文章。然而，因为文件夹的路径每天都将改变，所以必须首先检查是否文件夹已经
存在，如果不存在，就创建它。这在if not fso.folderexists代码段完成。然后，取得那个路径，创建一个新的文件。新
文件建立完成后，删除掉旧文件，这通过fso.DeleteFile来完成。

　　 这2步就是：对文件改名，然后移动到一个更合适的目录下。注意，在这里还可以对文件进行更多地操作，比如在写
入新文件前进行一下内容的编辑。
　　 FSO确实存在一些弱点 － 比如，它很难处理二进制文件，这包括Word文档、许多图形格式的文件和其他一些文件。然而你仍然可以用其他的方式操作这些文件 － 移动它们、删除它们，等等。你不能做的就是对它们进行打开或者写操作。

　　 另外一个限制是对于文件长度的问题。当立刻读写一些内容时，所有的信息都存储在内存中 －内容越多，消耗的内存就越大。这将使每个工作都变得慢起来。所以，如果需要操作非常大的文件，或者大量的小文件时，考虑将文件分割成小块，并且经常的清除内存。将应用程序融入进COM对象组件，也能大大地提高程序的速度。

　　 同样，你也不能使用FSO来管理权限以及文件、文件夹的属性，执行安全加密的一个很好方法就是将前面提到的留言簿文件设置为只读，在需要时再设置为可写，然后再修改回来。这个方法经常在CGI和Perl使用，但是很不幸，还没有令人满意的方法来用FSO实现。

　　 还能用FSO做什么？

　　 在FSO中还有许多很棒的功能，但许多人没有意识到。这些功能常常是在你感到做某些事情很难后才发现的，这时你经常要感叹到：要是我早知道这个方法就好了！

　　 下面列举一下这些不常用但是却非常酷的功能：

　　 很少被了解的FSO功能
GetSpecialFolder Method 返回特定的Windows文件夹的路径: Windows安装目录；Windows系统目录；Windows临时目录 FSO.GetSpecialFolder([0, 1, or 2])
GetTempName Method 返回一个随机产生的文件或者目录名字，用于需要存储临时数据时
GetAbsolutePathName Method 返回文件夹的绝对路径(类似于Server.MapPath)。
比如，FSO.GetAbsolutePathName("region") 将返回类似于下面的结果："c:mydocsmyfolder egion"
GetExtensionName Method 返回路径中最后部分的扩展名
(比如：FSO.GetExtensionName("c:docs est.txt") 将返回txt)
GetBaseName and GetParentFolder Methods 返回路径中最后部分的父文件夹
(比如：FSO.GetParentFolder ("c:docsmydocs") 将返回'docs')
Drives Property 返回所有本地可用驱动器的集合，用于建立资源浏览器样的用户接口。

　　 使用上面的功能时，最好建立好出错处理的代码。因为如果需要的参数不存在，将会产生麻烦的信息。

　　 总结

　　 如我们所见，FSO非常有用，这里介绍的仅仅是冰山一角。你可以使用FSO建立功能强大的应用程序，简单地完成许多任务。 
up
set fso = nothing
%>

　　 FSO能力的不足在这里却成了优势，我们可以一次执行2步。首先，打开文件并读入文件的内容。假设这里要创建一个
唯一的文件夹和一个唯一的文件来存储文章。然而，因为文件夹的路径每天都将改变，所以必须首先检查是否文件夹已经
存在，如果不存在，就创建它。这在if not fso.folderexists代码段完成。然后，取得那个路径，创建一个新的文件。新
文件建立完成后，删除掉旧文件，这通过fso.DeleteFile来完成。

　　 这2步就是：对文件改名，然后移动到一个更合适的目录下。注意，在这里还可以对文件进行更多地操作，比如在写
入新文件前进行一下内容的编辑。
　　 FSO确实存在一些弱点 － 比如，它很难处理二进制文件，这包括Word文档、许多图形格式的文件和其他一些文件。然而你仍然可以用其他的方式操作这些文件 － 移动它们、删除它们，等等。你不能做的就是对它们进行打开或者写操作。

　　 另外一个限制是对于文件长度的问题。当立刻读写一些内容时，所有的信息都存储在内存中 －内容越多，消耗的内存就越大。这将使每个工作都变得慢起来。所以，如果需要操作非常大的文件，或者大量的小文件时，考虑将文件分割成小块，并且经常的清除内存。将应用程序融入进COM对象组件，也能大大地提高程序的速度。

　　 同样，你也不能使用FSO来管理权限以及文件、文件夹的属性，执行安全加密的一个很好方法就是将前面提到的留言簿文件设置为只读，在需要时再设置为可写，然后再修改回来。这个方法经常在CGI和Perl使用，但是很不幸，还没有令人满意的方法来用FSO实现。

　　 还能用FSO做什么？

　　 在FSO中还有许多很棒的功能，但许多人没有意识到。这些功能常常是在你感到做某些事情很难后才发现的，这时你经常要感叹到：要是我早知道这个方法就好了！

　　 下面列举一下这些不常用但是却非常酷的功能：

　　 很少被了解的FSO功能
GetSpecialFolder Method 返回特定的Windows文件夹的路径: Windows安装目录；Windows系统目录；Windows临时目录 FSO.GetSpecialFolder([0, 1, or 2])
GetTempName Method 返回一个随机产生的文件或者目录名字，用于需要存储临时数据时
GetAbsolutePathName Method 返回文件夹的绝对路径(类似于Server.MapPath)。
比如，FSO.GetAbsolutePathName("region") 将返回类似于下面的结果："c:mydocsmyfolder egion"
GetExtensionName Method 返回路径中最后部分的扩展名
(比如：FSO.GetExtensionName("c:docs est.txt") 将返回txt)
GetBaseName and GetParentFolder Methods 返回路径中最后部分的父文件夹
(比如：FSO.GetParentFolder ("c:docsmydocs") 将返回'docs')
Drives Property 返回所有本地可用驱动器的集合，用于建立资源浏览器样的用户接口。

　　 使用上面的功能时，最好建立好出错处理的代码。因为如果需要的参数不存在，将会产生麻烦的信息。

　　 总结

　　 如我们所见，FSO非常有用，这里介绍的仅仅是冰山一角。你可以使用FSO建立功能强大的应用程序，简单地完成许多任务。 <img src ="http://www.cnitblog.com/wroxman/aggbug/14510.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/wroxman/" target="_blank">waiter</a> 2006-08-01 13:49 <a href="http://www.cnitblog.com/wroxman/archive/2006/08/01/14510.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>ASP.FSO-ASP中FSO的神奇功能</title><link>http://www.cnitblog.com/wroxman/archive/2006/08/01/14509.html</link><dc:creator>waiter</dc:creator><author>waiter</author><pubDate>Tue, 01 Aug 2006 05:47:00 GMT</pubDate><guid>http://www.cnitblog.com/wroxman/archive/2006/08/01/14509.html</guid><wfw:comment>http://www.cnitblog.com/wroxman/comments/14509.html</wfw:comment><comments>http://www.cnitblog.com/wroxman/archive/2006/08/01/14509.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/wroxman/comments/commentRss/14509.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/wroxman/services/trackbacks/14509.html</trackback:ping><description><![CDATA[　　 在ASP中，FSO的意思是File System Object，即文件系统对象。

　　 我们将要操纵的计算机文件系统，在这里是指位于web服务器之上。所以，确认你对此拥有合适的权限。理想情况下，你可以在自己的机器上建立一个web服务器，这样就能方便地进行测试。如果运行于Windows平台，请试一试微软公司的免费个人Web服务器PWS。

　　 FSO 模型对象
Drive Object：驱动器对象 供存取磁盘或者网络驱动器
FileSystemObject Object：文件系统对象 供存取计算机的文件系统
Folder Object：文件夹对象 供存取文件夹的所有属性
TextStream Object：文本流对象 供存取文件内容

　　 你可以使用上面的对象做计算机上的任何事情，也包括破坏活动 ;-( 所以，请小心使用FSO。在web环境中，存储信息是非常重要的，比如用户信息，日志文件，等等。FSO提供了一个强大且简单的方法高效率地保存数据。在这篇文章里面，着重讨论FileSystemObject和TextStream对象。

　　 FSO由微软公司提供支持，对于非Windows系统，大概不能再使用ASP。

　　 怎么样使用FSO？

　　 为了使用FSO来执行所有的工作，首先要创建对象，代码就象下面这样：

　　 < %
Set fso = Server.CreateObject("Scripting.FileSystemObject")
% >

　　 这样就建立了FSO并且赋予变量fso，接着就可以使用熟悉的object.method语法来执行文件系统的操作〔查看Visual Basic文档，获取更多的关于对象和对象向导编程的知识〕。在这里，我们可以使用fso.method 或者 fso.property，这些将在下面的例子中看到。

　　 FSO模型位于由微软提供的脚本运行时间DLL文件中，它是scrrun.dll。你可以在任何应用程序中引用这个DLL文件，比如MS Access，Word。 就是说，并非仅仅限制在ASP中应用它。

　　 这里有一个简要的FSO方法列表：

　　 FSO方法
CopyFile 拷贝一个或者多个文件到新路径
CreateTextFile 创建文件并且返回一个TextStream对象
DeleteFile 删除一个文件
OpenTextFile 打开文件并且返回TextStream对象，以便读取或者追加

　　 如果想了解完整的FSO方法与属性，请查阅微软MSDN。下面来看几个例子。

　　 假设你想创建一个简单的留言簿，你可以建立一个数据库，在其中存储用户的信息。然而，如果并不需要数据库的强大功能，使用FSO来存储信息将节省你的时间和金钱。并且，一些ISP也许限制了web上的数据库应用。

　　 假设你在一个表单中收集了一些用户信息，这里是一个简单表单HTML代码：

< html>
< body>

< form action="formhandler.asp" method="post">
< input type="text" size="10" name="username">
< input type="text" size="10" name="homepage">
< input type="text" size="10" name="Email">
< /form>
< /body>
< /html>

　　 再看看formhandler.asp中处理表单的代码：

< %
' Get form info
strName = Request.Form("username")
strHomePage = Request.Form("homepage")
strEmail = Request.Form("Email")

' create the fso object
Set fso = Server.CreateObject("Scripting.FileSystemObject")

　　 迄今为止，还没有新鲜的东西，无非是获取表单域的值并且赋值到变量。下面出现了有趣的部分 － 写文件：

path = "c: emp est.txt"
ForReading = 1, ForWriting = 2, ForAppending = 3

' open the file
set file = fso.opentextfile(path, ForAppending, TRUE)

' write the info to the file
file.write(strName) & vbcrlf
file.write(strHomePage) & vbcrlf
file.write(strEmail) & vbcrlf

' close and clean up
file.close
set file = nothing
set fso = nothing

　　 回想一下，OpenTextFile方法返回一个TextStream对象，它是FSO模型中的另外一个对象。TextStream对象揭示了操作文件内容的方法，比如写、读一行、跳过一行。VB常量vbcrlf产生一个换行符。

　　 在OpentextFile的命令参数中定义了TRUE，这就告诉了系统，如果文件不存在，就创建它。如果文件不存在，并且没有定义TRUE参数，就会出错。

　　 现在转到目录c: emp，打开test.txt，你可以看到如下的信息：

User's name
User's home page
User's email

　　 当然，这些单词可以被输入在表单中的任何内容所替换。
　　 现在已经有了一些用户信息保存在文件中，就像一个简单的数据库。假设有一个用户想了解所有的访问者，就要从登
记的信息中分离出相关部分，因为没有象数据库一样拥有结构化的列。

　　 我们知道，在所创建的文件中，第1行是用户名，第2行是他们的主页，第3行是他们的电子邮件地址。随后登记的用
户也是按照这样的结构存储他们的信息，所以每3行将包含一个用户的登记信息。知道了这些，就可以编写下面的代码来显
示信息：

< %
' create the fso object
set fso = Server.Createobject("Scripting.FileSystemObject")
path = "c: emp est.txt"

' open the file
set file = fso.opentextfile(path, 1) < -- For
reading

　　 接着，分析每一行，并且格式化数据：

do until file.AtEndOfStream
Response.write("Name: " & file.ReadLine & " ")
Response.write("Home Page: " & file.ReadLine & " ")
Response.write("Email: " & file.ReadLine & "< p>")
loop

' close and clean up
file.close
set file = nothing
set fso = nothing
%>

　　 这里仅仅做了一个非常简单的输出，但是你可以根据情况包含表格或者DHTML表单信息。

　　 如果已经正确地建立并写入了文件，上面的小小循环将合适地列出数据库中的每一个人的信息。ReadLine方法读取1
行内容，直到遇到换行符，随后的ReadLine调用将读取下一行。AtEndOfStream是TextStream对象的属性，它告诉我们何时
遇到文件的尾部。

　　 假设由于某种原因，我们没有正确地形成文件，如果一个用户只有2行信息而不是3行，那么就会产生一些错误。我们
这里的循环取回文件中的下3行信息，如果没有3行多的信息，就将出现如下的错误信息：

　　 Server object error 'ASP 0177 : 800a003e'

　　 所以，一定要添加一些错误处理代码，以防文件中插入了多余的行或者少了必要的行信息。
　　 上面讨论了基本知识，然后说说权限许可的问题。FSO以创建它的用户帐户权限运行，换言之，如果有人从Internet
上访问你的页面，那么这个internet帐户就创建FSO。如果以administrator的身份登录计算机，并且登录页面，那么
administrator帐户就创建了FSO。这是非常重要的，因为一定的帐户拥有一定的权限，并且FSO需要一些权限从而能完整的
执行功能。

　　 internet帐户（IUSER_MachineName，MachineName是服务器的名字）一般只拥有读权限，这意味着用户将不能写入留
言簿文件。然而，有几个选择可以绕过这个问题。

　　 首先，也是很困难的，是要求用户在填写留言簿前登录到服务器。然而，留言簿的要点是从匿名用户处收集信息，如
果要求用户登录，就必须要知道他们是谁。因此，跳过这个选择，看下一个。

　　 第2个方法是创建一个目录或者文件，IUSER_MachineName用户对此有写权限。这样做可能开放了一些潜在的安全漏
洞，因为任何知道正确目录并具备一定web技巧的人就能在服务器上填充内容。这是一个很严重的禁忌。所以你必须确认在
隐藏的场所保存了这些可写目录的信息，并且尽可能地将这些目录设置在web目录结构以外（比如在Windows下，这是一个
不在inetpub目录下的一个目录）。
　　 你也许想：好，现在我知道如何写入文件了。但能做到更多一些吗？下面来试一试为web站点建立一个搜索功能。

　　 建立搜索引擎的关键是递归。主要地，编写一段代码搜索目录下的文件，然后对所有的目录循环执行同样的代码。因
为不能确定总共有多少个子目录，所以必须一遍又一遍地执行搜索代码，直到结束。递归调用非常好！

　　 下面来创建搜索页面。假设已经建立了一个HTML表单，用户在其中输入一个搜索字符串。

Dim objFolder
Dim strSearchText
Dim objFSO

strSearchText = Request.Form("SearchText") < -- The search string
' create the FSO and Folder objects
Set fso = Server.CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder(Server.MapPath("/"))

Search objFolder

　　 上面的代码简单地初始化变量，Search函数执行搜索功能，描述如下：

Function Search(objFolder)

Dim objSubFolder

'loop through every file in the current
folder

For Each objFile in objFolder.Files

Set objTextStream = objFSO.OpenTextFile(objFile.Path,1) < -- For Reading

'read the file's contents into a
variable

strFileContents = objTextStream.ReadAll

'if the search string is in the file, then
write a link

' to the file

If InStr(1, strFileContents, strSearchText, 1) then

Response.Write "< A HREF=""/" & objFile.Name & _

""">" & objFile.Name & "< /A>< BR>"

bolFileFound = True

End If

objTextStream.Close

Next

'Here's the recursion part - for each

' subfolder in this directory, run the Search function again

For Each objSubFolder in objFolder.SubFolders

Search objSubFolder

Next

End Function

　　 为了能打开文件，FSO需要实际的文件路径，而不是web路径。比如，是c:inetpubwwwroot empindex.html, 而不是
www.enfused.com/temp/index.html 或者 /temp/index.html。 为了将后者转换为前者，使用Server.MapPath
("filename"), filename表示web路径名。

　　 上面的代码将在你指定的初始目录下的文件夹的每一个子目录中执行，在这里，初始目录是指web根目录“/”。然后
就简单地打开目录下的每一个文件，看看其中是否包含指定的字符串，如果找到字符串就显示那个文件的链接。

　　 注意，随着文件和子目录数量的增加，搜索花费的时间也将增加。如果需要繁重的搜索工作，建议你采取其他的方
法，比如微软公司的索引服务器Index Server。

　　 到此，你对FSO可能已经有了很好的体会。让我们再深入研究一步，来解决更复杂的难题。

　　 首先，你可能希望对文件改名。为了跟踪所有的文档，你将要重新命名它们以便唯一，这样就可以被系统容易地区
别。很不幸，FSO不允许简单的文件改名操作，所以我们不得不修改一下。

< %
' create the fso object
set fso = Server.Createobject("Scripting.FileSystemObject")
path = "c: emp est.txt"
strDate = Replace(Date(), "/", "")
strDir = "c:inetpubwwwrootarticles" & strDate
strNewFileName = Hour(Now) & "_" & Minute(Now) & "_" &
second(Now) & ".html"

' open the old file
set file = fso.opentextfile(path, 1) < -- For reading
strText = file.readall
set file = nothing

' check for and/or create folder
if not fso.folderexists(Server.MapPath(strDir)) then
set f = fso.CreateFolder(Server.MapPath(strDir))
else
set f = fso.GetFolder(Server.MapPath(strDir))
end if

' create and write new file
set file = fso.Createtextfile(f.path & "" & strNewFileName)
file.write(strText)
set f = nothing
file.close
set file = nothing

' delete the old file
fso.DeleteFile(path & "" & rst("FileName") & i)
' clean <img src ="http://www.cnitblog.com/wroxman/aggbug/14509.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/wroxman/" target="_blank">waiter</a> 2006-08-01 13:47 <a href="http://www.cnitblog.com/wroxman/archive/2006/08/01/14509.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>入侵中国某大型商业网站服务器全记录</title><link>http://www.cnitblog.com/wroxman/archive/2006/07/28/14322.html</link><dc:creator>waiter</dc:creator><author>waiter</author><pubDate>Fri, 28 Jul 2006 02:52:00 GMT</pubDate><guid>http://www.cnitblog.com/wroxman/archive/2006/07/28/14322.html</guid><wfw:comment>http://www.cnitblog.com/wroxman/comments/14322.html</wfw:comment><comments>http://www.cnitblog.com/wroxman/archive/2006/07/28/14322.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/wroxman/comments/commentRss/14322.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/wroxman/services/trackbacks/14322.html</trackback:ping><description><![CDATA[今天无意中浏览了一个商业网站,我不怎么喜欢浏览商业网站和政府的网站,突然有个想法想对这样的大型商业网站进行一次测试，我想这样的网站服务器应该能很安全,看了一下时间,20:47还早,下面浏览一下这个网站的结构,找到了http: //www.trager.com.cn/index.asp?id=14这样的一个界面,在后面加一个单引号http://www.traget.com.cn/index.asp?id=14'回车后出现,(图一)

　　没有过滤单引号,有SQL INJECTION漏洞,下面我的思路是SQL注入漏洞拿到网站后台管理员的帐户,然后进去上传一个ASP木马,先用工具找一下后台再说，看有没有什么漏洞,果然不出我所料,找到一个上传图片的界面,如(图二)

　　看一下源码,发现有上传漏洞,跟前些日子的6KBBS的上传漏洞一样，都是filepath变量的问题,如图(三)

　　下面进行上传ASP木马,选择好要上传的ASP木马,但不要点上传按钮,如图(四).

　　然后进行WSockExper抓包,如图(五)

点击放大此图片

　　回到IE中来上传文件，点“上传”按钮后，提示出错，说文件上传发生错误，文件格式不正确,这个是预料之中的(能直接上传成功才怪呢).

回到抓包软件中来看看抓包结果吧，WSockExper把我刚才的提交过程全记录下来了(图六)

 

点击放大此图片

　　把第三行和第四行复制到文本文件中，注意回车也应复制进去。保存为2.txt(图七)

点击放大此图片

　　下面我们来修改这个文件. 我们改文件名,找到filename="D:\Documentsand Settings\Administrator\桌面\wenzhang\shadow.asp"这一句,把ASP文件的后缀名改成图片格式的,如图 (八) 然后在要上传的目录后面加上要保存的文件名,然后在文件名后面空一个空格,如图(九)

点击放大此图片

　　现在拿出UltraEdit-32，打开2.txt，找到/upload/shadow.asp这一字串，点编辑-->HEX功能-->HEX编辑:在OD前把与空格对应的十六进制代码20改为00(图十)，保存退出。我们要的数据就成了。

　　下面就是提交了。

　　打开CMD，进入有NC的目录，用NC以如下命令提交我们的数据:

　　nc www.traget.com 80 <2.txt

　　很快就返回提交成功的信息，告诉我们“软件上传成功!”并且告诉我们软件的路径和文件名:“upload/shadow.asp”。(图十一)

点击放大此图片

　　还等什么，我们到IE中去看看自己的成果吧，看我们的ASP文件到底传上去了没有?在IE中打开http://www.trget.com.cn/upload/shadow.asp，看，多么熟悉的画面(图十二)，有了它，什么样的ASP后门不能上传呢? 漏洞的原因动网的漏洞多数人知道，所以现在不少网站已经修补了这个漏洞，但对于文件名，有些程序却没有考虑到。

点击放大此图片

　　其实，这个漏洞，在原理上同动网漏洞是一样的，都是利用电脑在读取字符串时，遇到“\0”(00)时，认为字符串结束了，从而丢掉后面的字串。这一电脑特性也不知算不算漏洞，正如UNICODE编码特性一样，可被人利用。尽管在这里网页过滤了路径，但仍从用户处接收文件名，我们同样可以在字串中构造“\0”，又在结尾处构造gif，因为扩展名是从右读取的，它认为文件类型是gif，从而可以骗过扩展名验证可以上传，在保存时，文件名又是从左边读取的，当它遇到“\0”时，后面就都丢掉了，于是文件就被保存成我想要的shadow.asp了。我们学习入侵时应了解一个漏洞的实质，灵活变通，一样能达到目的.

　　我已经通过ASP木马拿到SA的用户名和密码了,我不想在渗透下去了,到这,这篇文章已经接近尾声了，今天写这篇文章没有什么高深的技术写的目的是提醒一下网管,这样大型的网站服务器竟然如此脆弱,真让我们中国人担忧,这篇文章的地址我没写出来的目的是我没有通知管理员,我担心公布出来,警察叔叔会找我.呵呵,现在时间21:59,欢迎大家和我交流.<img src ="http://www.cnitblog.com/wroxman/aggbug/14322.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/wroxman/" target="_blank">waiter</a> 2006-07-28 10:52 <a href="http://www.cnitblog.com/wroxman/archive/2006/07/28/14322.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>顶级男装指南   </title><link>http://www.cnitblog.com/wroxman/archive/2006/07/27/14274.html</link><dc:creator>waiter</dc:creator><author>waiter</author><pubDate>Thu, 27 Jul 2006 03:32:00 GMT</pubDate><guid>http://www.cnitblog.com/wroxman/archive/2006/07/27/14274.html</guid><wfw:comment>http://www.cnitblog.com/wroxman/comments/14274.html</wfw:comment><comments>http://www.cnitblog.com/wroxman/archive/2006/07/27/14274.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/wroxman/comments/commentRss/14274.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/wroxman/services/trackbacks/14274.html</trackback:ping><description><![CDATA[比起女装来，男装显然沉闷而无趣得多，可是要穿出品位和舒适来，真不是一件简单的事。而在今天对于大多数男人来说，拥有一件非常棒的西服，也许就可以支撑一辈子（只要你能穿进去），这就是为什么顶级男装显然比顶级女装好卖得多的原因。

。。毫无疑问，顶级进口男装有着不容忽视的魅力。他们多年面对高品位而又高消费的顾客，在此过程中积累了大量经验，在如何为人本身服务上精益求精、力求完美。加入高科技元素的高档面料，绝对在手感和质地上就让你觉得物有所值。整体造型显得更修长而毫无受束缚的感觉，在造型手段日益先进的今天，去掉繁复沉重的多重衬里，令穿着者更轻松。从纽扣、衬里到拉锁均有品牌LOGO，更让你平生一种得意之感。在细节上的考虑就更让人感动了，比如说：袖口扣做成可掀开的；胸袋裁得略带弧形，以适应胸部的结构；裤腰上的V型开口和有弹力的裤腰衬，以适应腰围骤增骤减……总之，品牌的种种考虑体贴而细致，只有亲身一试你才能体会到个中妙处。

。。虽然，顶级品牌有千般好处，但绝大多数的消费者都被它的价格吓退了。随随便便一件T恤就是一两千大元，想成为享受顶级时尚的精神贵族，首先得成为物质的贵族。消费这些顶级品牌的人大多是两种极端：一类是对时尚相当有品味的外企高级白领和国内巨款，这些普罗大众眼里高不可及的顶级时装，对于他们只不过是小菜一碟。而各专卖店的店长们也把他们看作真正的主顾，一年成百上千万的收入令他们当得起贵族。他们对某一品牌的选择相对固定，顶级品牌已经成了他们顶级身份的象征。而另一类则是暴发户，他们购买顶级品牌纯粹是为了摆阔，他们对流行美感一无所知，或大呼小叫地强调自己的存在，或讨价还价就像在菜市场买菜，虽一掷千金却心有不甘。

。。再下来，就是只能在领带、皮具上找找感觉的普通消费者。不过对于他们来说，打折让他们有机会宣泄对名牌的热爱，虽然即使是半折，这些服装仍价格不菲，但毕竟让人可以接受。其实在国外，服装一过季就便宜得令人笑掉大牙，可是国内在这一点上尚未能与国际接轨。不过，前一阵中国入WTO取得重大进展的消息，着实令人看到了希望。

。。顶级男装的魅力仍令人不能小觑，它会让你不论精神还是身体都得到极大满足。如果你有能力，试试顶级男装吧棗你不会失望的。

 


   Karl Lagerfeld（德国）
拉格斐


简介：作为夏奈尔（Chanel）、芬迪（FENDI）等国际名牌的主设计师，生于德国的Karl Lagerfeld在摄影、哲学、语言等方面均有极高深的造诣。他的设计富于时代感，精致典雅，充满艺术气质。

标识：德国人的严谨和不花哨在拉格斐的LOGO中表现无疑，“LAGERFELD”和“KL”冷静地显示着大师实力。

其他产品：领带、围巾、香水、眼镜、帽子

国内销售地点：北京王府饭店、深圳西武百货、广州花园酒店、上海梅龙镇伊势丹、上海华亭伊势丹


   GIANNI VERSACE（意大利）
詹尼·范思哲

简介：性感、张扬、艳丽，这就是意大利著名设计师Gianni Versace（詹尼·范思哲）的风格，也是诸多明星喜爱Versace的原因。在意大利人传统的家族观念影响下，Versace家族已经深入了每一个层面，这就是为什么Donatella（当娜泰拉）能顺理成章地主持VERSACE的原因。

标识：蛇发女巫梅杜莎和城墙垛一般的传统图案已成为VERSACE的品牌logo。

其他产品：皮具、香水、配饰、箱包、首饰、眼镜……

国内销售地点：北京王府饭店、上海锦江迪生商厦、上海梅龙镇伊势丹百货


   HUGO BOSS（德国）

简介：带一点家居感的休闲装是BOSS的代表，每一季BOSS的设计总令人有舒适而惊喜的感觉。中庸的色彩中，款式上的特点令时尚而成功的boss们爱不释手。

标识：在“HUGO BOSS”的字样上是大写的“BOSS”。

其他产品：领带、围巾、钱夹、提包、香水、眼镜、帽子

国内销售地点：上海美美百货、北京王府饭店、北京丰联广场、广州花园酒店、温州、厦门


   GIORGIO ARMANI（意大利）
乔治欧·阿玛尼

简介：1973年Armani建立了自己的品牌。26年来，GIORGIO ARMANI牌时装以其中性化的风格倾倒了无数追随者，更成为世界各地高层主管和好莱坞明星的最爱。

标识：GIORGIO ARMANI各系列标识上的唯一不同，就在于布标的颜色。

其他产品：配饰、香水、眼镜、手表

国内销售地点：北京王府饭店


   Givenchy（法国）
纪梵希

简介：经典、高雅、时髦，这就是被称为法国时装界的绅士的Givenchy的风格所在。由于奥黛丽·赫本等名人顾客和新晋设计师Alxander McQueen的加盟，始于1952年的Givenchy早已声名远扬。

标识：黑体字的GIVENCHY字样，和 图案堪称Givenchy的金字招牌。

其他产品：皮具，领带、领带夹、配饰、香水等。

国内销售地点：北京王府饭店、上海梅龙镇伊势丹百货、广州友谊商店、深圳西武百货、大连、沈阳、成都、西安


   GIEVES&HAWKES（英国）

简介：英国皇室特许的男装品牌GIEVES&HAWKES成立于1785年，二百多年来为贵族绅士提供高贵隽永的风格甚得皇室推崇，授予皇室勋章，任命为皇室设计服饰，现今顾客大多来自财经界及商界。

标识：除了GIEVES&HAWKES上加有三枚勋章外，全新的“GH”加上一只剑的形象不失简约高雅。

其他产品：领带、袖扣、领带、皮件

国内销售地点：北京、上海、大连、深圳、广州、武汉、哈尔滨、天津


   KENZO（日本）
高田贤三
简介：由日本设计师高田贤三创立的KENZO喜欢以各种不同的文化无素为灵感，混合其色彩图案创造自己的特色。作为一个外国人，与Karl Lagefeld并称法国时装界的二“K”。
标识：色彩搭配鲜艳的大写粗体KENZO代表了设计师的理念。
其他产品：皮具、手表、眼镜、领带、袖扣、领夹、香水……
国内销售地点：深圳西武百货、成都、广州


   BALLY（瑞士）

简介：150年来，BALLY以其做工精良的皮具享誉世界，进而更将触角伸向服装业，通过全世界500多家专卖店推广其产品，并以精美高贵为讲求品味的顾客服务。

标识：“B”字成为最有代表性的logo，而标准logo中的鞋像一对翅膀一样出现在“B”字上方。

其他产品：皮具、领带、丝巾、手表

国内销售地点：哈尔滨新世界百货商场、沈阳新世界百货商场、大连富丽华酒店、北京王府饭店、北京新世界百货商场、北京庄胜崇光百货、上海鸿翔百货公司、上海新锦江大酒店、上海美美百货、武汉新世界百货、广州中信广场、广州花园酒店、中山国际酒店、珠海海湾大酒店、深圳西武百货、郑州裕达国际贸易中心


   Dormeuil（英国）
多美

简介：在150多年的时间里，Dormeuil一直致力于为全球顶级男装设计师提供配饰。典雅、高贵和贵族化是Dormeuil的风格，是都会商务成功男士的最爱，而许多男装经典款式都是出自Dormeuil。

标识：传统英式徽章和PARIS DORMEUIL LONDON字样，完美地突出了Dormeuil的贵族气质。

其他产品：领带、围巾、袜子、皮具、配饰

国内销售地点：北京王府饭店、北京庄胜崇光百货、成都仁和春天百货

 


ALFRED DUNHILL（英国）
登喜路

简介：1893年成立的英国男装品牌，强调将现代与传统相结合，带着浓浓绅士味的登喜路时装的确令人赏心悦目。

标识：黑体字dunhill成为识别登喜路的最显著标志。

附属产品：皮具、香烟、烟具、领带、手表、笔具、香水

国内销售地点：北京国际贸易中心、北京庄胜崇光百货、北京恒基中心中商赛特精品世界、大连富丽华大酒店、沈阳商贸饭店、哈尔滨新世界百货中心、长春卓展时代广场、上海美美百货公司、南京金陵饭店、郑州市中州假日宾馆、西安世纪金花购物中心、重庆时代新世界百货中心、成都新婉露精品店、武汉新世界百货公司、昆明金龙百货公司、广州中国大酒店、广州友谊商店、广州中天购物广场、深圳信兴广场、杭州市杭州大厦、宁波新世界百货广场、温州国际酒店、长沙通程大酒店、青岛香格里拉饭店
  

Ermenegildo Zegna（美国）
杰尼亚

简介：Ermenegildo Zegna是世界闻名的男装品牌，而它最著名的是剪裁一流的西装，亦庄亦谐的风格令许多成功男士对它十分青睐。

标识：简洁的“Ermenegildo Zegna”显得非常有都市味。

其他产品：领带、配饰

国内销售地点：北京王府饭店、北京中国国际贸易中心、上海静安希尔顿饭店、上海新锦江大酒店、上海梅龙镇广场、广州中国大酒店、广州花园酒店、深圳西武百货、深圳信兴广场商场、长春香格里拉大饭店、大连富丽华酒店、大连瑞士酒店、沈阳新世界百货、青岛香格里拉大饭店、温州国际大酒店、杭州浙江世界贸易中心大饭店、宁波新世界百货、武汉新世界百货、哈尔滨新世界百货、西安世纪金花购物中心、成都岷山饭店、重庆万豪酒店
  

NINA RICCI（法国）

简介：1932年，丽姿夫人与儿子Robert Ricci在巴黎创立了NINA RICCI。60多年来，一直以高贵经典的风格称雄法国时装界。最近，更网罗了原来Prada的设计师在旗下，颇得好评。而今天遍布全世界130多个城市的专卖店，更显示了NINA RICCI的强大号召力。

标识：简洁的“NINA RICCI”、“PARIS”和手写体的“Monsieur”的字体组合，非常经典。

其他产品：领带，丝巾、配饰、香水等

国内销售地点：北京国际贸易中心、上海新锦江大酒店、大连富丽华大酒店
  

克里斯蒂安·迪奥

简介：Mr.Dior虽已谢世四十多年了，但是其深远影响已深入人心。国内的消费者了解得更多的可能是Dior的女装系列，而Dior男装纯粹高贵的形象，也颇具魅力。

标识：服装上出现的一般是绣在衣标上的Christian Dior Paris的字样，配饰上一般为“CD”或“Dior”的标志。

其他产品：皮件、手表、眼镜、鞋子、香水等。

国内销售地点：北京王府饭店
  

GUCCI（意大利）

简介：作为意大利最有影响的家族产业，在102年的时间里Gucci传了四代，其间诸多风雨。直到今天，美国人Tom Ford使GUCCI成为世界顶级品牌。又帅又酷，稍带一点邪气成为GUCCI男装的特点。

标识：银色的GUCCI和“G”成为认出GUCCI的明显标志。

附属产品：皮具、箱包、鞋、手表、香水、丝巾、领带、眼镜

国内销售地点：北京王府饭店、上海美美百货、广州中国大饭店
  

Gianfranco Ferre（意大利）
吉安弗兰科·费雷

简介：学建筑出身的Ferre70年代曾经在印度呆过一段时间，所以雕塑感和印度异域风情成为Ferre的两大特点。89-96年曾担任Christian Dior的艺术总监，成绩有目共睹。近年，专心于设计自己的品牌。

标识：黑白双色的GIANFRANCO FERRE字样突显Ferre的冷硬设计风格。

其他产品：配件，眼镜等。

国内销售地点：北京王府饭店
  

Salvatore Ferragamo（意大利）
菲拉格慕

简介：以制鞋起家的Ferragamo一直以来都是意大利制鞋行业的经典，明星顾客数不胜数，像：玛丽莲·梦露、索菲亚·罗兰、奥黛丽·赫本……在进入服装界后，每一季展示都突出其色彩丰富、线条浑圆的意大利风格。

标识：手写体的Salvatore Ferragamo是菲拉格慕的基本标识。

其他产品：鞋子、皮具、丝巾、领带

国内销售地点：北京王府饭店、北京恒基中心、北京庄胜崇光百货、上海美美百货、上海商城
  

VERSUS（意大利）
纬尚时

简介：VERSACE的二线品牌，Donatella（当娜泰拉）的根据地，比之VERSACE略显小气，但VERSUS贵气而青春的风格仍令人难忘。

标识：VERSUS空心字体下的Gianni Versace手写体字是纬尚时的标志。

其他产品：皮具、配饰、眼镜

国内销售地点：北京王府饭店、上海锦江迪生商厦、上海梅龙镇伊势丹百货
  

CERRUTI1881（法国）
简介：由尼诺·塞鲁蒂（Nine Cerruti）创立的经典品牌，与好莱坞的众多名片和明星均有不错的合作。最近，CERRUTI1881在纽约又开了新店，可见势头不错。
标识：无须赘言，CERRUTI1881本身就代表了时尚与经典。
其他产品：领带、皮具、香水
国内销售地点：北京王府饭店、北京国际贸易中心、上海锦江迪生商厦、上海华亭伊势丹百货、上海商城、广州花园酒店、深圳西武百货、长春卓展时代广场、大连富丽华酒店、郑州裕华国际贸易中心精品广场<img src ="http://www.cnitblog.com/wroxman/aggbug/14274.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/wroxman/" target="_blank">waiter</a> 2006-07-27 11:32 <a href="http://www.cnitblog.com/wroxman/archive/2006/07/27/14274.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>改善时间和精力的安排</title><link>http://www.cnitblog.com/wroxman/archive/2006/07/26/14213.html</link><dc:creator>waiter</dc:creator><author>waiter</author><pubDate>Wed, 26 Jul 2006 02:57:00 GMT</pubDate><guid>http://www.cnitblog.com/wroxman/archive/2006/07/26/14213.html</guid><wfw:comment>http://www.cnitblog.com/wroxman/comments/14213.html</wfw:comment><comments>http://www.cnitblog.com/wroxman/archive/2006/07/26/14213.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/wroxman/comments/commentRss/14213.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/wroxman/services/trackbacks/14213.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: &nbsp;&nbsp;<a href='http://www.cnitblog.com/wroxman/archive/2006/07/26/14213.html'>阅读全文</a><img src ="http://www.cnitblog.com/wroxman/aggbug/14213.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/wroxman/" target="_blank">waiter</a> 2006-07-26 10:57 <a href="http://www.cnitblog.com/wroxman/archive/2006/07/26/14213.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>