[置頂]

書單: 安迪葛洛夫:Only paranoid survives.

Feb 27, 2009

[share] Don't put an expression in a macro !!!

Dear all,

I made a mistake...

I wrote code like following...

FAILED_RETURN(hr = CopyPEFiles(bCopyPEFiles));       

The definition of FAILED_RETURN is

#define FAILED_RETURN(hr)       { if(FAILED(hr)) { _ASSERT(FALSE); return hr; } }



Guess what?

The macro is expended like:

{if(FAILED(hr = HPCopyPEFiles(bCopyPEFiles)) {_ASSERT(FALSE); return hr = HPCopyPEFiles(bCopyPEFiles);}



Oops! CopyPEFiles() are entered twice !!!!


The correct code should be:

hr = CopyPEFiles(bCopyPEFiles);
FAILED_RETURN(hr);


Putting an expression in parameter list of a function may be safe,

but it MUST BE dangerous in a macro !!!



Feb 13, 2009

今年大製作動作片預告

魔鬼終結者4: 未來救贖
http://www.truemovie.com/2009moviedata/TerminatorSalvation.htm
* 看上去非常有質感,預期會是一部好片
北美上映日期:2009/05/22
台灣上映日期:2009/05/27

(為什麼官網 (http://rss.warnerbros.com/terminatorsalvation/) 的海報是 05.09 啊?
是延後上映嗎?)

變形金剛2
http://www.truemovie.com/2009moviedata/Transformers2.htm
* 現在只有超級盃預告,不過光是開場的隕石撞擊空母,就讓我覺得「對,就是要這樣」的期待了,有那種麥克貝+布拉克海默的feel
北美上映日期:2009/06/26
台灣上映日期:2009/06/26

(比T4晚一個月...)


 

Feb 11, 2009

[Batch Script Programming] Execute 2 commands in IF expression

You can execute 2 or more commands in one IF expression:

  • You can use "&" to execute 2 or more command if a IF expression
  • @echo off

    set A=12
    set B=24

    IF %A% EQU 12           echo "hawaii" & echo "los angles" & echo "tapiei"

    The result is
    "hawaii"
    "los angles"
    "tapiei"

  • If you use set command right before "&", don't leave space. Or the space will become part of the value.

  • For example, following code will search \sources\boot.wim in each drive (from C to Z). If found, it will set variable RP the drive.

      FOR %%d in (C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z) DO IF EXIST %%d:\sources\boot.wim set RP=%%d& GOTO END_SEARCH_RP

      However, if you leave space befire "&", like this:

      FOR %%d in (C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V, W, X, Y, Z) DO IF EXIST %%d:\sources\boot.wim set RP=%%d & GOTO END_SEARCH_RP

      If "E" is the drive, the above code will set RP as "E ".

Feb 6, 2009

search by regex in VS 2005

If you want to use regular expression to search string, please refer

http://msdn.microsoft.com/en-us/library/2k3te2cs.aspx


Some regex items cannot be used in VS 2005,

ex: \W, \A, \S....


Feb 1, 2009

About PostQuitMessage(0)

http://www.hkitn.com/article.php/2552/2
這裏我們主要使用了三種消息:WM_PAINT , WM_COMMAND和WM_DESTROY ,但是我們可以隨著程式而是用各種各樣的消息。為了處理不同的消息,在程式中使用了分支結構,所以隨著程式的規模越來越大,這個分支結構也會越來越龐大。

  在這些消息中有兩個點是最為重要的,其一是WM_DESTROY消息,它表示一個銷毀視窗退出應用程式的消息。也是每個程式所必備的。對於這個消息的處理方式就是通過調用PostQuitMessage ( 0 )函數傳遞一個WM_QUIT消息,準備讓由GetMessage 、 TranslateMessage和DispatchMessage三個函數組成的消息迴圈中的GetMessage取得。當消息迴圈中的收到WM_QUIT消息時,GetMessage會傳回0,從而結束消息迴圈。進而釋放各種資源,結束整個程式。另一個重要的地方是DefWindowProc函數。我們的程式無論多大都不可能將所有的消息都處理,所以我們必須有一個機制讓不重要的不需要我們處理的消息,交給windows作業系統為我們處理,這個過程就是由DefWindowProc函數來實現的。 因此當我們按下視窗右上角的差號或者按下左上角系統功能表中的Close命令時,系統會送出WM_CLOSE消息。通常程式的視窗函數不攔截此消息,於是交由DefWindowProc函數來處理。DefWindowProc函數在受到WM_CLOSE消息後,調用DestroyWindow把視窗清除。DestroyWindow又會送出WM_DESTROY消息。程式又如前面講到的一樣來結束程式釋放資源。


其他參考:
http://msdn.microsoft.com/zh-tw/library/dd229215.aspx
大內高手專欄:
揭開訊息迴圈的神秘面紗
作者:蔡學鏞
2005 年 3 月

http://delphi.ktop.com.tw/board.php?cid=168&fid=914&tid=95232


 

Jan 29, 2009

在家中找的的舊東西

http://www.csie.ntu.edu.tw/~r91044/doku.php?id=20090129_mycomputeroldthings
  • 第一台買的燒錄機:Panasonic 7502B
    • 8X read
    • 4X write
    • SCSI
  • 第一片聲霸卡的手冊(看不出廠商)
  • 有買過 Creative Sound Blaster PCI64
  • 有買過 Sis 6326 (應該是我上大學之後,幫家裡在花蓮百事可買的那個 Socket 7 586 電腦…)
    • 好像是恩雅的卡…?
  • 有我當年買 Voodoo Rush 卡的手冊
    • Helios 3D Voodoo Rush, 6MB EDO RAM
    • Alliance 128 bit AT3D/AT25
    • 3Dfx interactive Voodoo Rush
    • PCI 2.0/2.1 compliant
    • 這是我大學機的第二張顯示卡,也是最後一張顯示卡。
    • 那時因為3D 遊戲正流行起來,有些我還可以跑,可是像太空戰士7我就沒辦法跑,就買了這一塊。
    • 3Dfx 那時正紅呢. nVidia 只不過是後來才出卡的小老弟(Riva 128?)
    • 因為我的原本顯示卡頗弱(我已經忘了是那張卡),所以不像一般人買 Voodoo I/Voodoo II/Voodoo Banshee, 我買的是Voodoo Rush. 這一張卡同時兼有一般顯示卡與3D顯示功能。前面說的那幾張需要搭配另一張VGA卡(for 2D)才能使用。
    • 這張卡曾經跑過 Redhat Linux 6.X. 也就是其 linux driver 可以找的到。我記得是用 AT25 的 driver.

家中的除濕機:SANYO SDH-680B

http://www.snoopy.net.tw/showroom/view.php?C=376420

新的要3400元。


新買的籃球鞋

## 就順便來個 my nike shoes 大整理吧


我的 Nike 慢跑鞋
鞋名:AIR EPIC AP (???)
型號:310023-231
購入時間:嗯...大概是2006年春節
狀況:現役
產地:泰國製
物品資訊:
310023-231 PA
US 9, UK 8
09/17/05, 11/23/05
200054306
相關連結:
http://www.shoetop.net/310023-231-310023-231-NIKE_P64633/
http://photos.i.cn.yahoo.com/05965236221/2df7/#doc-body
http://item.eachnet.com/prd/1215848611074664_prd.html

http://blog.roodo.com/iamjungle/archives/1134026.html
http://blog.roodo.com/nbxp/archives/1225489.html

我的 Nike 籃球鞋
鞋名:NIKE ZOOM REBOUND LEATHER
型號:333761-161
購入時間:2009/01/26,於花蓮千田運動廣場,老爸的愛心
狀況:未穿
產地:中國製
物品資訊:
333761-161 YS
US 9, UK 8
08/13/08, 10/23/08
200388637
相關連結:
http://goods.ruten.com.tw/item/show?11090115771205
http://tw.f4.page.bid.yahoo.com/tw/auction/d37259166
http://www.sm-ms.com.tw/pub/product_info.php/info/p3515_09-01-333761-161.html



葛林斯潘如何看待這波金融海嘯

新聞一
http://jamesz.pixnet.net/blog/post/22214926
時間:2008/10/24
地點:葛林斯潘出席國會調查小組聽證會
重點:
* 那些認為借貸機構的自利行為會保護房貸戶抵押資產淨值的人,尤其是我自己都感到震驚跟難以置信。
* 葛林斯潘告訴眾議院政府改革暨監督委員會:「截至目前為止的金融損害,我不知道我們如何能避免裁員及失業大幅增加。」
* 他強調,「我們正處於百年一見的信用海嘯中。」

新聞二
http://blog.sina.com.tw/hermann/article.php?pbgid=39231&entryid=585222
時間:同上
地點:同上
重點:
* 除信用違約交換之外,大多數的衍生商品都沒有造成重大問題
* 次貸異常增生是因為全球經濟蓬勃帶來巨大的投資需求
* 最後崩盤是因為投資人未能適當評估風險,因而使得不良信用拖垮借款機構。
* 葛老指出,他也曾經擔憂連續五年的房市榮景將演變為投機泡沫,危害經濟,但他選擇排斥這種想法,因為他認為房市是地區性市場,不太可能出現全國盡皆下跌的情況;在次貸風暴之前,歷史上的確也沒有全國房市同步滑落的前例,他說:「這次危機比我想像的還深廣。」

新聞三
http://www.coolloud.org.tw/node/28991
時間:同上
地點:同上
重點:
* 美國前聯準會主席葛林斯潘說,美國正處在信貸海嘯的當口,不過歸功於強健的金融體系,他預測美國終究可以度過這次危機。
* 葛林斯潘說,他支持美國政府七千億美元的紓困行動。

新聞四
https://tw.money.yahoo.com/news_article/adbf/d_a_081024_30_1713r
內容同上

新聞五
http://news.pchome.com.tw/finance/cnyes/20081024/index-12247778503167009003.html
時間:同上
地點:同上
重點:
* 葛林斯潘周四告訴眾院委員會說,美國將能走出目前這波信用危機,而且金融體系會更為健全。
* 葛林斯潘說,無論管理規則做了何種改變,以應付這次的危機,與今日市場的大幅改變相較,都會相形見絀。他說市場將會大為收斂,而且收斂程度絕非目前正在考慮的新管理規則所能辦到。
* 「投資人在飽嘗教訓後,將會變得格外謹慎。」他補充道。
* 葛林斯潘在聽證會中,提議改變管理規則,即要求所有發行證券的公司保留相當部份自己發行的證券。
* 前財長史諾(John Snow)與證券交易委員會(SEC)主席考克斯(Christopher Cox)亦將進行聽證。史諾與考克斯在書面的證辭中均建議,讓市場具有更大的透明度。

Jan 11, 2009

真男人 - 美國紐約州長斯皮策

http://news.bbc.co.uk/chinese/trad/hi/newsid_7280000/newsid_7289000/7289005.stm

這樣說有點奇怪,但是為買淫的事道歉真的很不容易。

在他道歉前的處境是:警方並沒有找他,只是不知怎麼,

消息竟被報紙揭露。但是,他僅僅只因為報紙登了,跟幕僚開過會之後,

就決定公開道歉。

我不如他。

2009/01/11 update: 2008/03/11 就寫的文章,到今天才發送到blog.