我不宅,我只是不出門

Murmur of a technical dude

Limitation of widget.system(…).outputString

leave a comment »

DashboardWidgets 看到的討論,也讓我覺得在寫 Widget 時奇怪的地方有個答案。

This is a major flaw in the widget.system design where the output can only be less than 4096bytes (4k)…….It’s a huge pain in the ass and it took me many hours to find out the problem. Considering the documentation on widget.system makes no mention of this utterly ridiculous limitation. I hope this helps you all stuck with this issue.

總而言之,要取得回傳的字串,不能超過 4KB。否則 widget.system 所執行的程式執行完畢後, widget 就 hang 在那邊不能動,只能 close。因為我在寫 StarDict 的 widget 版本,只要是簡單的字就正常,太多解釋的英文字,因為有 cdict、朗文、牛津、xdict 這些字典檔,加一加很快超過 4KB,然後 widget 就掛了。
不過拿掉一些字典似乎不是治本的方法,比如說牛津雖然內容很多,但是拿掉了,難保以後其他字典查出來不會超過 4KB,可能還是照樣 hang 住不能動。

Written by jclin

2005/07/24 於 6:37 上午

張貼於talk

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 變更 )

Twitter picture

You are commenting using your Twitter account. Log Out / 變更 )

Facebook照片

You are commenting using your Facebook account. Log Out / 變更 )

Google+ photo

You are commenting using your Google+ account. Log Out / 變更 )

連結到 %s

%d 位部落客按了讚: