2009/01/12
討人厭的C#
Lac d'Annecy.France
在安納西最後一個月坐上觀光船繞湖一週時拍的。
Taiwan
盡國民應盡的義務時,拍的基隆嶼。
****
上班時,為了讓自己在做一些事情時更有效率,或是減少copy paste的動作,
特地寫了一個C#的小程式。
一方面是為了熟悉這個語言(雖然到現在還是一點兒也不熟);
另一方面還是因為懶,懶得用C或C++撰寫。
最近想把這工具拷貝到同事的電腦裡,讓他也可以用時,
發現竟然執行時會有錯誤。
一時之間我也不知道為什麼,也不行就耗在那兒。
最後只好土法鍊鋼,還是用老方式,copy paste。
之後就一直對這件事梗梗於懷。
既然花時間寫了一個好用(至少我覺得好用)的東西,
不能跟其他人分享實在是很可惜。
所以這兩天特別再花了點時間,研究出到底是哪一次的更新所造成的問題。
原來,是一個registry key啊~
前不久有位同事寄了一篇好文章給大家,
裡頭說明了如果在PC上的registry設定某一個鍵值,
Windows Mobile Device在連上Activesync時就不會囉哩八唆,
跳出對話視窗問你要不要這個那個的,
它會直接以Guest的方式做連結。
這對於在開發windows mobile程式有很大的幫助,
因為我們通常一天要連activesync不下數十次。
每次都要用滑鼠去取消建立partnership,累積下來的時間也是很可觀的。
所以在知道這個訊息之後,我自然很高興的為我的小工具加上了這個功能,
讓我可以很快的切換是不是要用Guest的方式連結我的Device。
但是,在讀取registry key時,我用的API是OpenRegistryKey。
當系統中不存在某個鍵時,OpenRegistryKey的回傳值是null。
我卻沒有事先判斷回傳值,就直接去抓回傳值的Value。
這樣的一個小疏忽,害我花了大半天的時間在trace問題所在。
因為我的電腦上,已經建立了這個key,所以怎麼debug都不會失敗;
而我手邊又沒有多餘的電腦,有灌好Visual Studio with C#,
可以讓我做測試。
終於在昨晚,我用家裡的電腦debug程式,才找到了因為registry key不存在的這個問題。
寫程式,還是乖乖地在每個可能出錯的地方加上錯誤判斷才是正解啊。
nullreferenceexception,希望以後不要再遇到你了。
接下來,應該要試著把這支程式包個安裝檔。
這樣子其他人比較會有想用的意願。
訂閱:
張貼留言 (Atom)
中國 App 商業模式 -- 王泌
很有系統地介紹了中國近幾年比較大的幾十個 app,包含他們主要的商業模式,投資者,和特色在哪裡。對於想要了解中國 App (網路服務) 市場的人來說,會是個很好的入門書。雖然已經是兩三年前的資料了,這兩三年又有了很大的變化,但依然是個很好的起點。
-
Sushi.Taipei le passe simple(簡單過去式),唯一一個還沒學到怎麼動詞變化的時態,所以趁還有力氣時,先把它寫一遍。這是一個主要用於書寫的時態。一般會話時,對於過去的事情,不是用l'imparfait就是用le passe compose在描述。了...
-
(山寺.日本) 幾乎快忘了當初有拍這張照片。記憶力真的愈來愈差了。 幾年前的藏王行,途中有在山寺稍做停留。 山寺是個小鎮,鎮上最有名的(或是目前我還記得的…),就是它建在山上的寺廟。 上山的路很陡,想必當初寺廟蓋得也很辛苦吧。 到了山腰或是山頂,就可以放眼往山谷和另...
-
(Jellyfish.Osaka.Japan) 去水族館看水母,已經成了到各地水族館既定的行程。在微光下,要拍攝出動人的水母照片,難度頗高。若是能拍攝到,當天的心情一定會特別好。 **** 新版的教育廣播電台網站,把原先可以直接下載的連結全變成了網頁。有些課程只能線上...
沒有留言:
張貼留言