2007-08-26

Extreme Ways

Artist: Moby

Extreme ways are back again
Extreme places I didn't know
I broke everything new again
Everything that I'd owned
I threw it out the windows, came along
Extreme ways I know move apart
The colors of my sea
Perfect color me

Extreme ways that that help me
Help me out at night
Extreme places I had gone
But never seen any light
Dirty basements, dirty noise
Dirty places coming through
Extreme worlds alone
Did you ever like it planned

I would stand in line for this
There's always room in life for this

Oh baby, oh baby
Then it fell apart, fell apart
Oh baby, oh baby
Then it fell apart, it fell apart
Oh baby, oh baby
Then it fell apart, it fell apart
Oh baby, oh baby
Like it always does, always does

Extreme songs that told me
They helped me down every night
I didn't have much to say
I didn't get above the light
I closed my eyes and closed myself
And closed my world and never opened
Up to anything
That could get me along

I had to close down everything
I had to close down my mind
Too many things to cover me
Too much can make me blind
I've seen so much in so many places
So many heartaches, so many faces
So many dirty things
You couldn't believe

I would stand in line for this
It's always good in life for this

Oh baby, oh baby
Then it fell apart, fell apart
Oh baby, oh baby
Then it fell apart, it fell apart
Oh baby, oh baby
Then it fell apart, it fell apart
Oh baby, oh baby
Like it always does, always does

2007-07-04

飞行十字勋章


这名来自宾西法尼亚国民警卫队直努克救援队的飞行员在没有着陆场的情况下依然靠自己的出色技术将机尾搭在了房子上将受伤的101st士兵救走.后来这名飞行员获得了飞行十字勋章。

2007-06-03

基督教
新约全书,歌林多前书第13章


爱是恒久忍耐,又有恩慈。
爱是不嫉妒,爱是不自夸,不张狂;
不作害羞的事,不求自己的益处;
不轻易发怒,不计算人的恶;
不喜欢不义,只喜欢真理;
凡事包容,凡事相信,凡事盼望,凡事忍耐。

2007-04-29

随缘

《太极张三丰》片尾曲

制作:音乐工厂
编曲:花比傲
作曲:罗大佑
作词:林夕

刀光剑影不是我门派
天空海阔自有我风采
双手一推非黑也非白
不好也不坏
没有胜又何来败

没有去哪有来
手中无剑心中无尘
才是我胸怀
随缘而去乘风而来
才是我胸怀

唇枪舌剑不合我姿态
天空海阔才是我风采
双手一推非虚也非实
不慢也不快
没有胜又何来败

没有动哪有静
手中无剑心中无尘
才是我胸怀
随缘而去乘风而来
才是我胸怀

2007-04-02

使用 Wininet 以 PUT 方法上传文件

客户端与 HTTP 服务器通常使用 GET 和 POST 方法进行交互,其中, GET 方法是客户端从服务器取得文件, POST 方法是客户端提交数据给服务器。
当我们需要上传文件给服务器的时候,可以使用 POST 和 PUT 方法。 POST 方法通常用来向表单提交数据,此时表单的 enctype 属性被设置为默认值"application/x-www-form-urlencoded" ,当需要向服务器提交大量文本、二进制数据时, enctype 属性将被设置为"multipart/form-data" 。 POST方法的优势在于能够在一次提交过程中传输多条数据和多个文件,但是实现起来比较复杂,如果我们只是需要传输一个文件的时候,使用 PUT 方法就方便多了。
PUT 方法的实现很简单,只需要打开 HTTP 连接,发送文件大小,读取本地文件,将内容以二进制方式写入到 HTTP 消息体中, MFC 代码如下:
  CInternetSession session;
  CHttpConnection * pHttpConn = NULL;
  CHttpFile * pHttpFile = NULL;
  try
  {
    pHttpConn =session.GetHttpConnection(m_serverHost, m_serverPort);

    //接收所有文件类型
    TCHAR accept[] = _T("*/*");
    //参数需要的数组
    const TCHAR *acArray[2] = {accept,NULL};
    LPCTSTR* ppstrAcceptTypes = acArray;

    //打开PUT方法的HTTP连接
    pHttpFile =pHttpConn->OpenRequest("PUT", m_serverObjectName, NULL, 1, ppstrAcceptTypes);

    //发送提交文件的大小,m_pLocalFile为文件对象指针
    DWORD fileLength =m_pLocalFile->GetLength();
    pHttpFile->SendRequestEx(fileLength);

    BYTE buffer[HTTP_BUFFER];
    //写入文件内容
    m_pLocalFile->SeekToBegin();       
    int nRead = m_pLocalFile->Read(buffer,HTTP_BUFFER);
    while (nRead==HTTP_BUFFER)
    {
      pHttpFile->Write(buffer, nRead);
      nRead =m_pLocalFile->Read(buffer, HTTP_BUFFER);
    }
    pHttpFile->Write(buffer, nRead);
    pHttpFile->EndRequest();

    //如果需要读取返回的结果,在这里调用 CHttpFile::Read 函数

    //释放资源
    pHttpFile->Close();
    pHttpConn->Close();
  }
  catch (CInternetException * pEx)
  {
    pEx->Delete();
    if (pHttpFile!=NULL)
    {
      pHttpFile->Close();
    }
    if (pHttpConn!=NULL)
    {
      pHttpConn->Close();
    }
  }
在上面的代码中,我们将本地文件上传到服务器中,由于 PUT 方法的消息体只能传送文件内容,所以,如果需要传输附加的参数,可以调用 CHttpFile::AddRequestHeaders 函数,具体使用方法请参考 MSDN 。
在 WEB 应用程序中,如果服务器端使用 ASP.NET ,可以通过 HttpRequest.InputStream 属性得到 Stream对象,从中读出二进制数据;如果服务器端使用 Java Servlet ,可以通过 HttpServletRequest.getInputStream 方法得到 ServletInputStream 对象,从中读出二进制数据。

2007-03-30

樱花

托尼托尼·乔巴《海贼王》

我问你,人究竟什么时候会死?

是心脏被枪打中的时候?

不对。

是得了不治之症的时候吗?

也不对。

喝了剧毒磨香菇的之后吗?

当然不是!

而是被世人遗忘的时候。

只要你还有着梦想。

你的人生就会很美好。

2007-03-25

SETI@home

SETI@home俗称为寻找外星人计划,基于BOINC(Berkeley Open Infrastructure for Network Computing,伯克利开放式网络计算),官方主页为:http://setiathome.berkeley.edu/,内容介绍如下:

SETI (搜寻地外文明) 是一个寻找地球以外智慧生命的科学实验。我们使用的方法称之为射电SETI,即使用射电望远镜来监听太空中的窄带无线电讯号。有些信号我们认为是不可能自然产生的,如果能探测到这样的信号就可以证明地外文明的存在。
射电望远镜探测到的信号主要由噪声 (来自天空中的信号源以及接收器本身的电子噪声) 和像电视转播站、雷达和卫星等人工产生的信号所组成。我们的射电SETI项目对这些数据进行数字化分析。有更强的计算能力就可以更灵敏地对更宽的频率范围进行搜寻。因此,射电 SETI 项目对计算能力的需求是永无止尽的。
原来的 SETI 项目曾经使用望远镜旁专用的超级计算机来进行大量的数据分析。1995年,David Gedye 提议射电 SETI 使用由全球联网的大量计算机所组成的虚拟超级计算机来进行计算,并创建了 SETI@home 项目来实验这个想法。SETI@home 项目于1999年5月开始运行。

中国分布式计算总站致力于网络公益性计算的推广和宣传,对BOINC的中文化帮助给予支持,BOINC 5.x 新手指南对如何加入BOINC项目做了详细的介绍。作为关心外星人生活的一员,我已加入SETI@home项目,成为SETI@China小组成员。
如果您已加入SETI@home项目,那么SETI@home Enhanced 优化程序介绍值得一看,此优化程序能大大提高BOINC的性能。