升級到 MovableType 2.661

拖拖拖….轉眼就拖了一年,Movable Type都已經到 3.17 版了,而我…還在用 2.64.
原因是因為我以為下載不到 2.661 了….
其實上官方網站免費加入會員以後,還是可以在帳戶裡面下載到 2.661 版.
再配合JediMovable Type完全手冊,一下子就搞定了.
升級上,沒啥問題. MySQL database 不用動,只要先備份 mt.cfg 以及 mt-db-passwd.cgi.
然後把新的檔案複製過去,最後再把剛剛備份的檔案覆蓋回來就好啦~~
收工.

TOEIC 成績

最近 TOEIC 的成績公佈了,600分.
很多人問我,600分是高還是低,到底通過了沒?
根據我外文系的妹妹表示,TOEIC沒有所謂的通過標準,他只是評量你的英文能力而已.
我覺得,這次沒看書還可以考的不錯,原因應該是在於我看了一些考試的 tips,這些 tips 真的很實用,至少不會讓你在考試的時候不知所措.
下面是這次考試成績的一些資料…由此應該可以推斷考的如何…
toeic grade

How to detect device arrival?

幫朋友找資料找到的,順道貼上來
我沒試過
不過我想應該是可以運行吧~~
以 VFP 或 VB 來說,是利用 sysinfo 這個 Active X control .
主要是攔截 DeviceArrival 這個 event
詳細的範例可以參考DeviceArrival Event Example
雖然他是 VB 的範例,不過看起來應該是很好改成 VFP 才是…

Private Sub SysInfo1_DeviceArrival(ByVal DeviceType As Long, ByVal DeviceID As Long, ByVal DeviceName As String, ByVal DeviceData As Long)
  Debug.Print "DeviceArrival"
  Debug.Print "devicetype " & DeviceType
  Debug.Print "DeviceID " & GetDrive(DeviceType, DeviceID)
  Debug.Print "DeviceName " & DeviceName
  Debug.Print "DeviceData " & DeviceData
End Sub

Private Function GetDrive(devType As Long, devID As Long) As String
  Select Case devType
    Case 0 To 1 ' returns null
      GetDrive = devID
      Exit Function
    Case 3 To 4 ' returns null
      GetDrive = devID
      Exit Function
    Case 2 ' logical drive.
      ' Create an array for the possible drive numbers returned by
      ' deviceID
      Dim drives(25) ' A-Z
      Dim dvNum As Long ' Possible bit values.
      Dim i As Integer
      dvNum = 1
      drives(0) = 1
      ' Populate with bit values.
      For i = 1 To 25
        dvNum = dvNum * 2
        drives(i) = dvNum
      Next i
      For i = 0 To 25
        If drives(i) = devID Then
          GetDrive = "Drive: " & Chr(i + 65)
          Exit Function
        End If
      Next I
    Case Else ' Other unexpected returns
      Debug.Print devType, devID
    End Select
End Function

MSI Robot

在海棠颱風來的前夕,去宜蘭童玩節.
在機器人館的最後,發現了一個熟悉的牌子 – MSI …
定神一看,還真的是耶~~本來以為是剛好縮寫是 MSI 的
勾起我的回憶, J 同學好像有跟我說過這麼一件事情…
特別拍照留念一下,不過光線不好,造成晃動很嚴重,請多包涵.
021-微星Robot-01
022-微星Robot-02
023-微星Robot-03

dotLucene(3)

為了要測知添加/刪除的效能,稍微寫了一些程式來測試.
結果還算令人滿意.
添加與刪除每種各測 10 次.
平均起來,添加只花了約一秒左右.
而刪除只花了約 0.015 秒.
算是很快的了.
測試的程序我想就不用貼上來了.
這一陣子也發現了不錯的系列文章
順便一併貼上來.
dotLucene 系列文章

白斬雞

從某電子報上剪貼下來的……還沒試過…
畢竟買一隻雞對一個小家庭來說,可能會需要蠻多時間來消化…
說明
白斬雞的作法,作料不多,能使雞體吸收的熱由外透裡,保存雞體內脂肪,所以能保存雞肉的自然風味。烹煮時可以用竹筷子插進肉質較厚的雞胸或雞腿部位,不滲出血水即為全熟。
白斬雞不但開脾健胃,還有維持神經系統健康、消除煩躁不安的功效。因為雞肉能提供我們所需的維生素B12,可以預防貧血、幫助食慾、提升睡眠品質;另外雞肉能提供礦物質硒(Se),具有提振情緒的好處。
材料
鮮雞 1 隻
蔥  2 條
薑蓉 1 湯匙
調味份量
鹽 1 茶匙
酒 1 湯匙
糖半茶匙
醬油半茶匙
作法

  1. 清洗雞的內腔後,以半湯匙鹽抹勻雞的表面及內腔,醃約十分鐘。
  2. 雞表面及內腔均抹上調味料。把蔥條及薑放進雞內腔
  3. 把雞放在一鍋滾水上,隔水蒸約二十五分鐘。
  4. 把雞沖冰水,令雞皮爽脆,待雞涼後,斬件上碟。

DataSet and xml

Export DataSet to XML 的方法:

StreamWriter xmlSW = new StreamWriter(“test.xml”, false, Encoding.Default );
ds.WriteXml(xmlSW, XmlWriteMode.WriteSchema);
xmlSW.Close();

第一行很重要,你得指定 encoding, 否則如果資料編碼不對,xml裡面的字就會顯示不出來.
所以如果你的當地編碼是 big5, 而且你的資料庫資料的編碼也是 big5, 那麼你應該使用 Encoding.Default.
Import DataSet from XML 的方法:

StreamReader xmlSR = new StreamReader( fileName, Encoding.Default );
ds.ReadXml( xmlSR, XmlReadMode.ReadSchema );
xmlSR.Close();

同理可證,你怎麼寫出去,就怎麼讀回來,這樣資料的編碼才不會有問題…
這我試了快兩個小時… =_=”
居然沒發現到 Encoding 有個 Default 的屬性,害我用 Encoding.ASCII 在那邊試半天…

Duff’s Device

國二菜鳥忙裡偷閒看到這篇Duff’s Device.
這段 code, 真的很神奇

register n = (count + 7) / 8; /* count > 0 assumed */
switch (count % 8)
{
case 0: do { *to = *from++;
case 7: *to = *from++;
case 6: *to = *from++;
case 5: *to = *from++;
case 4: *to = *from++;
case 3: *to = *from++;
case 2: *to = *from++;
case 1: *to = *from++;
} while (–n > 0);
}

不過我必須承認,在看了它提供的參考網址以後,我不知道這段 code 在幹麼….
參考網址: