這些文章屬於 '電腦類別' 類別

FireFox 擴充套件–新同文堂

星期四, 9 3 月, 2006

image

是不是查完 Google 或 Yahoo,漸漸有很多的資料在對岸的網站? 面對都是簡體的網頁,是可以看得懂,但是就是有點痛苦。 現在 Firefox 下,去裝個「新同文堂 」的擴充元件,關掉 Firefox 後,再開起,然後,如上圖,滑鼠按右鍵,找同文堂選單設定成「自動轉換繁體」,從此之後,你不用再面對簡體的網頁了,好用的很 ^_^

下載點在此 。

連線軟體–PieTTY & FileZilla

星期四, 2 3 月, 2006

image

用過多種連線軟體後,這個 PieTTY  是我目前最常用的連線軟體(Telnet/FTP),主要延自 PuTTY ,主要針對漢化做支援,去開啟中文的文件時,再也不會很痛苦地面對亂碼。

當然 PuTTY 原本就支援 SSH(port:22) 的安全連線方式,然後,我覺得最好用的是搭配 PuTTYgen 產生一組公鑰以及私鑰,Pageant 在每次啟動時讀取私鑰,然後在遠端的 .ssh/authorized_keys 檔內加入公鑰字串,然後 chmod 成 600,之後輸入 login 名稱後就不用輸入密碼就可進入,不但方便,而且這比直接輸入密碼安全。

而 FTP 軟體,我目前則用 FileZilla  ,因為這個有支援 SSH/FTP,而且有支援舊有的 FTP(port:21?),原本我用 WinSCP ,但不知為什麼好像沒做一般 FTP的功能,而當時 FileZilla 兩者都有,所以就換了。

雖然目前的 Linux 漸漸預設都不打開 telnet/ftp port 了,都改用 ssh port 了,但還是會遇到沒有 ssh port 的老機器(比如 Solaris),所以,還是都有支援的比較好用 ^_^

MySQL: Out of range value adjusted for column

星期五, 24 2 月, 2006
最近在 Windows XP 上安裝 CooCooWakka ,
PHP5 + MySQL5.0.13 + CooCooWakka0.0.9rc3 + Apache2.0.55
安裝過程,發現有下面的的訊息,
Query failed: insert into wakka_pages set tag = ‘MyNoteBook?’, time = now(), owner = , category = , user = ‘127.0.0.1’, latest = ‘Y’, body = ‘test’, tinychange= ‘N’, note= ,isnew= ‘Y’,aliasname= ,tview_count= ,refer_count= ; (Field ‘body_r’ doesn’t have a default value)
所以,去 MySQL 設定欄位 body_r 預設可以為 NULL,但接下來就發生下列的訊息,
Query failed: insert into wakka_pages set tag = ‘MyNoteBook?’, time = now(), owner = , category = , user = ‘127.0.0.1’, latest = ‘Y’, body = ‘test’, tinychange= ‘N’, note= ,isnew= ‘Y’,aliasname= ,tview_count= ,refer_count= ; (Out of range value adjusted for column ‘tview_count’ at row 1
後來查到說 mysql5 不喜歡空值 ”,而另外網頁則說明在「配置數據庫的時候設定為限制傳統 sql 格式了」,所以,在設定 MySQL Instance 時,將預設的 Strict Mode 的選項去除,再重新安裝 CooCooWakka 即可。

image

C++ 筆記:OPERATOR::AND is not an aggregate type

星期三, 22 2 月, 2006
最近在用 enum 時,遇到一個問題,如下:
class A
{
public:
enum OPERATOR
{
AND=0,
OR
};

dosomething(int type=OPERATOR::AND);

}

這段在 VC7.1 編譯得過,但在 gcc 下就不會過了,就會呈現 ‘OPERATOR::AND’ is not an aggregate type 的錯誤訊息了,網路上查一下得知,

Enumerators are names in the same scope where the enumeration type is declared.

所以,必需寫成如下:

class A

{

public:

enum OPERATOR

{

AND=0,

OR

};

dosomething(int type=A::AND);

}

這樣在兩個平台就都可以編譯了,但真是傷腦筋了,我倒覺得 VC7.1 的用法比較 Make Sense 哩!! 比如我想用兩組 enum type,而其中的成員命名一樣? 這要怎樣用?

class A

{

public:

enum OPERATOR

{

DISABLE=0,

ENABLE

};

enum SEARCH

{

DISABLE=0,

EXACT,

LOCAL_OPTIMIZE

};

dosomething(int search_type=A::DISABLE);

}

目前我只知道在 class 外的 enum 宣告,可以用 namespace 的方式來達到此目的,比如

namespace Sense{
enum SenseType
{
Vision, Hearing, Touch, Smell
};
}

就可以用 Sense::Vision 等..

但 class 內? 目前我還不知道,還沒有這個需要 ^_^ 有需要再研究。

C++ 筆記

星期五, 17 2 月, 2006
  • Alarm Clock
    • 在 Solaris 下,有時會出現 “ALARM CLOCK”,然後中斷。
    • 有可能是 usleep() 等造成的? 不太確定。
    • 方法:略去 SIGALRM 的 signal.
      • signal(SIGALRM, SIG_IGN);
  • 在 DLL 內實作 template class 有煩人的 explicit instantiation 的問題…
    • 參考這裡 
    • 另一篇有關 Template 實作的文章: 這裡 ,有一段 the “traditional” way of organizing source code (declarations in *.h files, and definitions in *.cpp files) does not work with templates,所以,我看到的 template 實作似乎都是整個放在 .h 。
    • 結論在 DLL 內實作 template class 有點煩人。
  • 少用 strdup,用 new/delete
    • 這樣常常會有問題 (不知為什麼?)
      • string pSrc;
      • strdup(pTarget, pSrc.c_str());
      • free(pTarget);
    • 改用這樣就沒問題
      • string pSrc;
      • pTarget = new char[pSrc.length()+1];
      • delete []pTarget;

記事軟體 — Stickies

星期二, 7 2 月, 2006

image

自從收信軟體改用 Thunderbird 之後,為了尋找可以取代 Outlook 的 Calender 的軟體,我找到這個 Stickies  的軟體,可以”貼”在桌面上以供提醒,但我不喜歡桌面一大堆便條紙的,我用 Sleep 的功能,可設定什麼時候跳出貼紙提醒一下,我試用一、二個月了,已沒有去開那肥肥的 Outlook 了 ^_^

而且這個免費的軟體,可以做到指定 ip/address 以及 email 來傳送便條紙的,而我之前 Survay 相關軟體要做到這樣,都是要錢的。

Shared Libraries

星期二, 7 2 月, 2006
最近寫的程式莫名其妙地越來越肥,所以,花時間研究一下 shared libraries.
Under Unix
  • Compile 的方式
    • gcc -fPIC -g -c -Wall a.c
    • gcc -fPIC -g -c -Wall b.c
    • gcc -shared -W1,-soname, libmystuff.so.1 -o libmystuff.so.1.0.1 a.o b.o -lc
      • 在 Solaris 下可能會發生 “relocations remain against allocatable but non-writable sections and relocation error”,加上 -mimpure-text 和 -shared 一起用。
      • -mimpure-text, used in addition to -shared, tells the compiler to not pass -assert pure-text to the linker when linking a shared object.
  • Link 的方式
    • 不要用 LD_LIBRARY_PATH 環境設定的方式,在於用非系統 lib 要用 suid 者,會有安全方面的問題。
    • Link Environment 的設定方式
      • Linux
        • 開發時,以 root 的身分在 /etc/ld.so.conf 加入開發 library 的路徑(比如 /home/derjohng/libs/),執行 ldconfig。
      • Solaris
        • 使用 crle -u -l <lib path>,就會加到 /var/ld/ld.config
    • ln -s libmystuff.so.1.0.1 libmystuff.so (不然,可能會有 error while loading shared libraries 的訊息)
    • gcc -o test test.c -lmystuff
  • 可參考 Program-Library-HOWTO 

Under Windows (VC++)

  • 在要包成 Dll 的程式檔頭 (.h) 加入下述的宣告

#if _DLL
# ifdef DLL_SRC
# define DLL_EXP __declspec(dllexport)
# else
# define DLL_EXP __declspec(dllimport)
# endif
#else
# define DLL_EXP
#endif

  • 在要包成 Dll 的程式檔 (.cpp) 前加入
    • #define DLL_SRC
  • 並將要 export 出去的 function 和 class 加上 export tag.
    • 比如 class DLL_EXP class_name
  • Compile
    • cl -c a.c -Foa.obj
    • cl -c b.c -Fob.obj
    • link /dll /implib:$c.lib -out:c.dll a.obj b.obj
  • Link
    • link c.lib -out:test.exe test.obj

Firefox 擴充套件–IETab

星期三, 25 1 月, 2006

IETab 是一個 Firefox 的擴充套件,可以在 Firefox 內開一個用 IE 執行的分頁,有點像 KKman,對於某些網站沒辦法用 Firefox 瀏覽臨時要切換成 IE 時,或在網頁開發需要兩種瀏覽器都要檢查時,這個套件蠻好用的。

下載點 。

image

Backup MySQL utf8 data

星期三, 18 1 月, 2006
一直在 backup wiki 的 mysql 資料,也一直認為 mysqldump 出來的資料是 utf8,今天心血來潮試一下,並不是這麼回事,也還好有測試這段,不然哪天資料毀了,就欲哭無淚~~
 
根據 mysql 官方網站的這頁 ,指出預設是用 latin1 的語系,而混雜著 -with-extra-charsets=complex 設定,即預設仍可以儲存 utf8, multibytes 等其他語系的資料,但語系設定不是 utf8,而是 latin1 :S
 
我測試之後,在用 mysqldump 時,就要用下述的方法 dump 出,
 
mysqldump --default-character-set=latin1 &lt;database_name&gt;
 
而下面兩種都可能會讓原本 utf8 資料亂掉:
mysqldump --default-character-set=utf8 &lt;database_name&gt;
mysqldump &lt;database_name&gt;
若要用 webmin 的 mysql 模組來備份的話,要修改 /usr/libexec/webmin/mysql 下的 backup_db.cgi 和 backup.pl 兩檔,找出
&amp;backquote_logged(&quot;$config{'mysqldump'}
在這之後加上一段
$config{'mysqldump'} --default-character-set=$config{'encoding'}

並到 Webmin 前端 Mysql 的「組態設定」將 Encoding for database content 設成 latin1 即可.

C++ Portable

星期一, 16 1 月, 2006
看完 http://blog.linux.org.tw/~jserv/archives/001436.html  的文章,再看 C++ portability guide  以及 Writing Portable C++  一文,我一直知道在 porting 時會有許多問題要考量,雖然我目前碰的軟體,號稱在 Windows, Linux, Solaris and AIX,都有產品,但我目前能做到Windows 為主就很累哩,而偶而會遇到Linux,就要辛苦去 porting 一陣子,甚至就想說,能勸說不要碰 Solaris/AIX 來解脫就一定要勸說,just say “No” to bad old platforms :p
要寫能 porting 到不同平台的 Code 真的很痛苦,特別是 thread 方面的東西,當然,這是各平台的呈現都有點不一樣,而特別在 Windows 和其他的平台更是不同,很難想像不用 Qt/Mono 之類的人,寫 GUI
方面不知怎樣寫? 用Java 寫 GUI? 好像更難? 我也寫過一陣子 Java(當然 GUI 不會),但還是覺得 C/C++ 寫的習慣 ^_^

MacBook Pro.

星期三, 11 1 月, 2006
image
Intel-based 的 Mac 已經宣告了,號稱比 PowerBook 快 4 倍,就不知可不可 Windows 也灌在同一台?如果可以,倒是下一台的 NB 可以改用這一款了。只是 $1999 起價???? 不算便宜…

PowerToy for MSN Spaces

星期二, 20 12 月, 2005
今天新增了一個計數器,
之前就一直在想是不是 Spaces沒辦法自訂頁面?
要加個什麼背景圖或計數器都沒辦法?
 
後來找到這裡 (http://www.playes.net/Blog/266.asp ),
發現可以加上兩個自訂 Html 區塊,但只能 512 字元!!
但應足夠去找個 web meter/counter,
將它的 HTML Code 貼進來使用。
 
也有一個 Tweak UI 可以 設定頁面的設定,
但能設定的東西有限,也不能用自己的背景圖?
 
一句老話,軟體為什麼老是有一好,嘸二好
為什麼不能像 blogger.com 可以自行設計畫面,
以及 CSS 支援???
 
這就是微軟利害的地方,將 blog 和 msn 綁在一起!!!
雖然 blog 的功能在和其他網站的 blog 比起來,
目前遜多了 /_\
 
(引用文章) ===================
Windows Media Player PowerToy

這個工具是最常見的,為你的 MSN Spaces 添加一個在線播放器,可以播放電影或者音樂。無需多說咯。

使用方法:

  1. 進入 MSN Spaces 的編輯頁面。
  2. 在編輯頁面的地址(這時在地址欄中顯示的地址)後面附加上「&powertoy=musicvideo」後回車。
  3. 新的頁面載入後,點擊「自定義」,在模塊的下拉菜單中就有一個新的「PowerToy:Windows Media Player」,點擊一下增加,然後保存。
  4. 這樣就會有一個新的模塊 Window Media Player,目前該模塊只有英文界面。
  5. 注意媒體文件的地址 URL,只支持 WMA, WMV, WAV, AVI, MPG, MPEG, MP3 格式(如需要支持播放列表,請看這裡 ),除外的格式將無法正常保存,導致預覽時播放器的按鈕為灰白
  6. 如果想頁面載入時自動播放的話,只需勾上 Auto Start;播放次數可以設置 Times to play。其他參數如播放器的外觀等默認無妨。
  7. 這樣,你的 MSN Spaces 就有了在線播放器的功能了。

Tweak UI PowerToy

這個功能模塊可以調整 MSN Spaces 各個模塊的外觀。MSN Spaces 就是由不同的模塊組成了,調整模塊的外觀也就調整了整個 Blog 的外觀,調整選項包括背景圖片,文字,顏色,邊框,透明度等等。

使用方法:

  1. 進入 MSN Spaces 的編輯頁面。
  2. 在編輯頁面的地址(這時在地址欄中顯示的地址)後面加上「&powertoy=tweakomatic」 回車。
  3. 新的頁面載入後,點擊「自定義」,在模塊的下拉菜單中就有一個新的「PowerToy:Tweak UI」,點擊一下增加,然後保存。
  4. 這樣就會有一個新的面板,裡面有許多的選項,根據你的想法調整 MSN Spaces 的外觀吧。

Custom HTML PowerToy

這個工具可以為 Spaces 添加一個模塊讓你插入任意的一段 HTML 代碼。這樣通過這個模塊,你就可以借助 HTML 語言顯示許多原本不能顯示的內容,大大增強了 MSN Spaces 的靈活性。另外對於這個模塊的顯示,你還可以自定義模塊的名稱,是否顯示邊框等。遺憾的是,因為安全問題,微軟過濾了諸多靈活的 HTML 標籤。

使用方法:

  1. 進入 MSN Spaces 的編輯頁面。
  2. 在編輯頁面的地址(這時在地址欄中顯示的地址)後面加上「&powertoy=sandbox」 回車。
  3. 新的頁面載入後,點擊「自定義」,在模塊的下拉菜單中就有一個新的「PowerToy:Custom HTML」,點擊一下增加,然後保存。
  4. 這樣就會有一個新的模塊設置。你可以輸入 HTML 代碼,另外還有關於名稱和是否顯示邊框的設置。

外一則:關於如何修改 MSN Spaces 界面語言

  1. 先打開你的首頁,如 http://spaces.msn.com/members/<players>/,注意後面不要帶任何參數。
  2. 然後在地址後面加上 ?mkt=zh-cn,回車後則界面變成簡體中文。
  3. 然後在地址後面加上 ?mkt=zh-hk,回車後則界面變成繁體中文(香港)。
  4. 然後在地址後面加上 ?mkt=zh-tw,回車後則界面變成繁體中文(台灣)。
  5. 然後在地址後面加上 ?mkt=en-us,回車後則界面變成英文(美國)。
  6. 最後,遺憾的告訴你,經過測試,關閉窗口再來過,又會恢復到原來的默認狀態:)
 

imageimage

C#中調用Windows API

星期四, 15 12 月, 2005
最近要試 C# 去呼叫我原有的 C/C++ Dll API,因為沒寫過 C#,整死我也~~
特別是 wchar_t 要轉成 multi-bytes/utf8 的問題,整理一下,以供備查。
(1) 來自中軟網,主要參考文章 

找好用的免費軟體?

星期二, 13 12 月, 2005
個人覺得還蠻實用的.

Thunderbird — Mail/RSS Reader

星期四, 1 12 月, 2005
最近一個月漸漸改用收信軟體,原本使用 Outlook,也蠻不錯用的,原本我用 ThunderBird  也只是想試試看而已,原想說完全用這個的機率不大吧,一用下來,乖乖~~還不錯用,因為原有 Outlook 用久之後,軟體每次要開啟就有點久,而且我為了收多個信箱,更是有此問題 :pRSS 的部份,thunderbird 是內建的,使用的情形如下面的圖片,在 Outlook (不是 Express) 也是可裝一些軟體來用,就是有點小麻煩,好用的要錢(比如 NewsGator).但是不知道怎了,thunderbird 對於一些網站的 RSS 沒辦法讀,比如無名小站 。有內建郵件過濾器 (filter),但功能較 Outlook 陽春,比如不能分「寄出郵件」到某個目錄。

有內建垃圾郵件判斷機制,這一個月用來,還不錯用,在 Outllook 的話,就要用 SpamBayes,原本不想換成 thunderbird,就是因為有 SpamBayes 可以減少我去看垃圾信的時間,而 Thunderbird 內建就有,是讓我將收信的部份移到 thunderbird 的最主要原因,當然,這個部份,目前 Trend Pc-cilin 2005 以後也有內建垃圾信件處理的功能,只是沒仔細去研究。

目前,和 IE/Firefox 都會一起用的原因類似,我仍會兩個一起用,在 IE/Firefox 是因為有一部份網頁,特別是 ActiveX 的網頁要用 IE。

而 Outlook 會留下來用,原因就是 Mozilla 目前沒有很好的「行事曆」的好軟體,是有個 SunBird 的計畫,但不足於取代 Outlook 的行事曆功能…Orz

Outlook 的定期提醒,對於我這種記性不好的人,很重要 ^_^

Firefox/Thunderbird 算是 Mozilla 近年來在通用軟體方面開發比較

成功的案例,之前的 Mozilla Browser 真的很難用!!

image

站內搜尋



本站其他服務

本站其他軟體



  • 臉書粉絲專頁搜尋 (FPSearch)

    不用登入臉書即可搜尋臉書粉絲專頁(臉書粉絲團)所公開的文章。您可以指定特定日期範圍之前的文章,也可設定搜尋粉絲專頁內包含特定關鍵詞的文章。


  • 藝文快訊

    讓你可以輕鬆追蹤含有您想要關注關鍵詞的任何藝文活動訊息,只要有最新的資訊,「藝文快訊」即會推播通知給你.


  • 股海快訊 (iNews123)

    提供特定個股新聞更新推播、股價警示推播、新聞社群分享以及每日個股收盤價等功能的股票App/股市App.


  • 台灣空污警報(AirInfo)

    設定特定站點為推播通知關注點後,當該站點空氣品質變糟時,即時推播通知給您。另外提供站點附近基本天氣預測資料。