Feeds:
文章
留言

Archive for 2005 年 11 月

朋友酒醉後的方向盤

那天朋友生日去唱歌.結果因為不勝酒力.中途就先閃人了
一上車就發現 哇靠….我的寒兜陸<方向盤>ㄋ .
害我氣的問候他老媽
X的 XXX XXX 現在的小偷真是奇怪.沒把車偷走.卻把我ㄉ寒兜陸幹走
搞不清楚這裡是誰的地盤……….是中華民國政府的ㄋ
一氣之下我拿起我的電話………報警.警察問了我一些無聊的問題:
警 :是什麼時後被偷的.
回 :不知道(廢話嘛!又不是小偷.我哪知.)
警:是剛剛嗎?
回:應該是吧.(廢話!難道是去年喔)
警:你是車主嗎?
回:恩..(靠.不然我是路人甲嗎?)
警:身分證字號
回:xxxxxxxxxx
警:電話
回:09xxxxxxxx
警:你用什麼手機
回:SHARP(我用什麼手機關你屁事ㄚ.你乾脆問我多少錢買的好了…..結果….)
警:跟我一樣也.你買多少錢?
回:忘了(哇靠…準…我打算改行去算命 鐵口直斷)
警:那你人在哪裡?
回 :在車上.(廢話!不然還在你心理喔)
警:那附近有沒有可疑的人.
回 :不清楚.(到底你是警察還是我是警察)
警:你是第一次報警嗎?
回:恩..(我沒事幹麼常常報警ㄚ)
警察問完就說:你待在那不要走.我們馬上派人過去處裡.
大概3 分鐘後警車到了.
然後……
(我第一次看到警察發飆…..)
警說 :先生.喝很醉喔!
回:還好啦.不過頭很暈
警:還好….我看是很不好…你這個混蛋.你坐在後座.怎麼會有寒兜陸啦.
回:喔…………………..
害我一直道歉.然後跑回去包廂.

Read Full Post »

 

前幾天聽到廣播,主持人開放 Call in..

主持人:
「請問您叫什麼名字呢?」

聽眾:
「eVonne」

主持人:
「e小姐您好」

(聽眾心裡暗罵,我是英文名字叫 eVonne,不是姓e)

Read Full Post »

Borland C++ Builder 提供一個相當方便的 TRegister VCL 元件,方便開發者讀寫系統登錄檔,這個元件的功能比 VB 提供的 RegXXX 系列的函數功能強的多,使用前必須先引入 #include <Registry.hpp> 才能使用 TRegister ,下面是的程式範例是讀取登錄檔中的 Run 和 Runonce 紀錄,透過 callback 方式顯示資料。
 

// callback
typedef void (*EventListRunValues)(const char* key, const char* value);
typedef void (*EventListRunOnceValues)(const char* key, const char* value);
 
/* 列舉系統開機自動執行(每次)
 *
 * 參數:
 *   EventListRunValues: callback 函數,第一個參數為 key 名稱,第二個參數為 key 的值
 *
 * 備註:開機自動執行的 Key
 *   HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun
 */
void listRunKeys(EventListRunValues callback){
  AnsiString S;
  TRegistry *Registry = new TRegistry();
  TStringList* itemSet = new TStringList();
  try{
    Registry->RootKey = HKEY_CURRENT_USER;
    Registry->OpenKey("Software\Microsoft\Windows\CurrentVersion\Run", false);
    Registry->GetValueNames(itemSet);

    for(int i=0; i<itemSet->Count; ++i){
       S = Registry->ReadString(itemSet->Strings[i]);
        callback(itemSet->Strings[i].c_str(), S.c_str());
    }
  }__finally
  {
    delete itemSet;
    delete Registry;
  }
}
/* 列舉系統開機自動執行(一次)
 *
 * 參數:
 *   EventListRunValues: callback 函數,第一個參數為 key 名稱,第二個參數為 key 的值
 *
 * 備註:開機自動執行的 Key
 *   HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRunonce
 */
void listRunOncesKeys(EventListRunOnceValues callback){
  AnsiString S;
  TRegistry *Registry = new TRegistry();
  TStringList* itemSet = new TStringList();
  try{
    Registry->RootKey = HKEY_CURRENT_USER;
    Registry->OpenKey("Software\Microsoft\Windows\CurrentVersion\Runonce", false);
    Registry->GetValueNames(itemSet);

    for(int i=0; i<itemSet->Count; ++i){
       S = Registry->ReadString(itemSet->Strings[i]);
        callback(itemSet->Strings[i].c_str(), S.c_str());
    }
  }__finally
  {
    delete itemSet;
    delete Registry;
  }
}
 
 

Read Full Post »

雖然這個工具的頁面上說明不支援 Windows 2000,但是我將該工具上安裝在 Windows 2000 依然可以運作,有興趣的人可以下載安裝試試看。可以方便你分析網頁結構、便於除錯。
 

Read Full Post »

粉有趣的 photoshop 教學…

一定要開音響啊…. 粉好笑的配音
請點選下面的超連結
 
 
 

Read Full Post »

[笑話]愛因斯坦

 愛因斯坦常常到處演講,

於是就請了一個司機。

普通的司機通常都在車上休息,

不過這個司機很有好學之心,

愛因斯坦在講課他就在面聽。

過了半年以後,

有一天司機跟愛因斯坦說:你講的那一套我都學會了。

愛因斯坦大笑說:我講的那些都是很專業的,你怎麼學得會?

不然你說給我聽看看。

司機就從頭到尾講了一遍給愛因斯坦聽,

講的很好。

愛因斯坦心想:我這麼久才想出來的理論,你開了半年車就都給我學會了。

心理很不平衡,於是就說:好,那改天你穿我的衣服上去演講,我穿你的衣 服在下面當司機,這樣你敢不敢?

司機就說:好呀,試試看。

於是有一天司機就穿愛因斯坦的衣服上去演講,

從頭到尾講了一遍,

講得很好,

聽眾在台下一直鼓掌,

然後就有一個觀眾問了一個很深入,

很專業的問 題。

愛因斯坦心想:呵呵,這下子司機下不了台了。

沒想到司機說:

你這個問題太簡單了,

為了證明它有多簡單,

我叫我的司機 給你回答就好了

 
PS. 這招真是高啊….

Read Full Post »

INSERT 資料的陷阱

今天查一個錯誤,發現程式都沒有修改,可是資料卻沒有新增到資料庫中,後來發現問題出在類似下面這一行程式
 
insert into tblUser values(1, ‘Arick’, ‘boy’)   
這一行程式一般情況下都可以正常,可是卻隱含了一個問題,因為這個語法並沒有明確的指定新增資料
的欄位,所以必須依據資料庫中的定義和順序將全部的欄位資料都填進去,發現問題了嗎?要全部的資料欄位都填寫,假設某一個人(啊~ 就是我)在tblUser新增了一個 age 欄位,又忘了修改上面那一行程式,那就會送給你一個"Column count doesn’t match value count at row 1"的錯誤訊息,為了避免修改上所引發的錯誤,比較好的寫法是明確的清楚要填寫哪些欄位,如下:
insert into tblUser(id, name, sex) values(1, ‘Arick’, ‘boy’)   
 
這樣可以比較明確的清楚知道你要新增什麼資料,未來在維護上也比較容易,不過,該修改的地方還是要修改。

Read Full Post »

« Newer Posts - Older Posts »