SharpDevelop2 + IronPython + PythonBinding

現在你可以用 SharpDevelop2 開發 IronPython 應用程式了。
1.首先下載PythonBinding,目前最新的版本是 0.5Beta。
2.解開,這裡我是將解開後的檔案放到 c:\tools\pythonbinding
3.打開 SharpDevelop2
4.[Tools][AddInManager],選 Install AddIn
5.指向剛剛 c:\tools\pythonbinding\PythonBinding.AddIn,接著按下 Close。
6.關閉 SharpDevleop2,重新啟動。
接下來,你可以 New Solution,就會看到 Python 的部份
PythonBinding-1
所以請新增一個 console application,這裡我命名為 hellopython。
這個新的專案裡面已經有個 Program.py 了,他只簡單的印出 “Hello world”。
這時候很直覺的按下綠色的三角形,也就是執行,SharpDevelop2 會很直接的告訴你有問題。

The “IronPythonCompilerTask” was not given a value for the required parameter “Mainfile”. (MSB4044)

你需要修改一下專案的屬性:以滑鼠右鍵點選左邊的專案,然後選 Property,依照下圖將 Start Object 修改為 Program.py
PythonBinding-2
再次按下執行,SharpDevelop2 很順利地 build 完成,但卻仍然無法執行,SharpDevelop2 會這麼告訴你:

Exception System.ArgumentException was thrown in debuggee:
The path is not of a legal form.
NormalizePathFast()
GetFullPathInternal()
GetFullPath()
ExecuteCompiled()
Main()

可是我以 console 模式去執行編譯出來的 HelloPython.exe,卻可以執行。
後來仔細看了一下工具列,原來按下紅色的驚嘆號就可以順利執行了。
PythonBinding-3
我想應該是 SharpDevelop2 還不支援 IronPython 的除錯模式的關係。
此外,目前也還不支援 Auto completion(自動完成),我想這部份應該很快就會被 release 出來了吧。
參考資料:

用 python 來複製 n 個相同的檔案

為了要將某個檔案複製出 500 份,寫了一個簡短的 python script。
很簡單,卻花了我不少時間查可用的 function。
range() 的行為跟我預期的有些不一樣,range(2,500)實際上是 2~499,並不會真正到 500。
所以 2~500 必須寫成 range(2,501) 才行。

import os
import shutil
n=501
for i in range(2,n):
filename='%04d.mp3' % i
shutil.copyfile( '0001.mp3', filename )

桌機無故重開機的推測-最後

在無法找到原因的情況之下,已經決定要升級了。
升級前做了最後一次掙扎,聽從好友建議,把 RAM 拔起來,用橡皮擦去擦到亮,接著再插回去。
居然,比較穩定了!
好吧,既然還能用,就再撐一陣子,省下一些銀子,順便也開始瞭解最近的行情,準備不行的時候來升級。

聊 Linux 的安裝

以前最熟悉的是 Fedora Core/Red Hat,這套不用說了,算是很簡單的了。
最近呢,則有幸裝了 Debian 3.x,發現跟以前 2.x 比起來,真的是方便很多。
不僅僅是安裝過程有中文,選擇上也很直覺簡單,下載也只要小小的 109M 就可搞定,其他東西大可等到 Base 安裝完成以後,再用 apt-get 來安裝。
基本上跟 Ubuntu 不遑多讓。
裝完以後,突然又興起裝 Linux 熱,於是又下載了 Gentoo 與 OpenSUSE 來玩。
Gentoo 本身網路安裝的話,只要下載 5xM 就搞定,可是安裝與設定上,肯定是讓你頭痛。我以前有裝起來過一次,這次是試到一半就放棄繼續了。不過裝完以後據說效能很好,因為所有套件幾乎都重新在你機器上編譯過。記得官方網站也有提供比較肥大的光碟可以讓你下載,對初學者來說,這應該會比較省事。
OpenSUSE 有提供網路安裝的版本,昨晚試了一下,真是很遜,也無法選擇安裝 Base system 就好,基本上是要下載完所有光碟,會比較好裝。
如果你是初學者,個人是推薦 Debian / Ubuntu / Fedora Core / OpenSUSE 這幾套。

轉眼訂閱已經突破400

bloglines_20060906_over_400
真是快,這期間也有努力刪掉一些沒在看,或是很久沒更新的,但還是突破 400 了。
不過我還算是小角色,網路上訂閱比我多的人多的是!

Ubuntu 的 Flash Video 沒聲音?

這幾天迷上Youtube,可是在我 Ubuntu 上的 Firefox 播放影片時,卻像啞巴一樣。
於是我丟 “ubuntu flash sound” 這幾個關鍵字給 Google,於是第一個結果就是我要的答案:
*macewan » Howto fix Firefox Flash Video Sound on Ubuntu Linux Dapper
方法很簡單,先安裝 alsa-oss,然後修改 /etc/firefox/firefoxrc,加上 FIREFOX_DSP=”aoss”。

$sudo install alsa-oss
$sudo vim /etc/firefox/firefoxrc

Workaround

感謝前同事 Terry 同學的解釋,讓我搞懂了。
Workaround 的意思:對Bug 來說,並沒有fixed 但是有替代方案可以避開
Severity 是代表嚴重性,當選為 Workaround 的時候,表示這個 bug 並沒有真正 fix,但是有替代方案可以避開,嚴重性不高
No workaround 的話,表示目前沒有 fix,也沒有替代方案,嚴重性就比較高~

桌機無故重開機的推測之三

在無法推敲出原因的情況下,請教了有這方面權威的 J 同學。
在我說出病徵之後,他很快的回覆了我。
我:”之前都好好的,後來 AMD 1.7G 就只能跑 1.1G,最近就常常當機了”
J:”那麼應該是主機板的石英振盪器有問題,目前這一款的石英振盪器也不容易找到備品替換,換一塊吧…”
我:”…冏…”
好吧~在現在這種主機板已經淪為消費品的時代,看來只好升級了…

桌機無故重開機的推測之二

感覺上很像是來混篇數的,不過昨天拆開電腦看之後,風扇並沒有問題…
Oh~My God~~這真是令人煎熬,到底是為甚麼呢?
我推測是顯示卡過熱,有點小可能。
另外,有人建議我看看有沒有爆漿,這也是一個很有可能的地方,回家看看。