2009年10月23日 星期五

.Net Framework 出現的0x8007007E 問題排解

最近在幫客戶安裝系統的時候, 發生了一個很詭異的問題-「找不到指定的模組」

在此先說明一下系統的環境:
OS: Windows 2003 Server R2 SP2 Standard Ed. x64
Software: Office 2007、Visual Studio 2008 Profession Edition、.Net Framework 3.5

原先看到找不到指定的模組是因為 assembly 沒有辦法載入,所以找了一下關於.Net Framework dll載入機制的文章
以為只要將此次需要使用的 third party component 新增到GAC就可以,
但是結果還是一樣...囧

這個時候真的沒啥頭緒了!後來又再次針對 「0x8007007E」這個關鍵字查詢,
找到了一篇有用的文章,詳閱點我

這篇文章說明了系統環境因為第三方元件有使用到VC++,但是沒有辦法載入它的vc++的dll,
所以找了一下檔案相依性的問題,發現了一個好用的工具-Dependency Walker
這個工具在點選了第三元件之後,果然將找不到的模組一一列出。
最後這個謎題就此解開了....

2009年6月3日 星期三

資料庫的文字型態差異

以前都是習慣使用 MySQL,因此接觸 SQL Server 的時間不算長,

可是卻常常分不清 varchar 、char 與開頭多了一個 n 在的差異在哪?

雖然之前有看過不同之處,但是常常忘記...所以決定寫一篇把這件事記起來。

2009年5月22日 星期五

抽象化的好處

最近拜讀「深入淺出-設計模式」一書後,常常很有感觸,

對於物件導向程式設計的觀念懂得還是太短淺了!

以前寫程式時很少考慮程式的擴充性與元件和元件的耦合力問題,常常會有牽一髮動全身的感覺!囧...

2009年5月20日 星期三

JSLint建議使用[]取代new Array()的原因

最近想要查詢一下 Javascript 的語句寫法,查看一下一些平常我沒有接觸過的內容。


不經意地發現了 JSLint 這個網站,它有一項線上檢驗語法寫的好壞的功能,有興趣的朋友可以試試看,


結果是....我被踐踏的體無完膚啊~~~跟標準還有一段差距!囧


雖然寫出來的程式能夠正確執行,但是卻不是使用標準寫法,這讓我有點對自己生氣。


2009年5月13日 星期三

網頁的文件定義

最近客戶常常反應網頁的排版有問題...原來是微軟已經把 IE 8 設為更新的項目之一!!! 囧

剛好公司都有訂購 iThome 的雜誌,翻了一下才知道 IE 8 與其之前版本的差異頗大....

根據 iThome 393期的報導指出,IE 8 遵循國際網頁標準,那...也就是說之前的版本(IE 7、IE 6)都不符合,

才會導致網頁設計師常常為了 FF 與 IE 兩套瀏覽器需要各自撰寫。囧

雖然微軟有針對邁向標準化提出向下相容的作法,但是實際上,使用後發現,原本在IE 7與IE 6能正常顯示的,

使用IE 8 的相容性檢視卻還是會出問題,也證明了它的相容性檢視並不是直接用IE 7的kernel來剖析。

2009年5月9日 星期六

Google Map的註標連結地址

最近突然好奇 Google Map 要怎麼能夠查找地址,所以就翻了一下他的官方文件。

發現主要查找地址的功能來自於 GClientGeocoder 這個類別,它提供我們取得經緯度的位置(getLatLng) ,
以及運用經緯度或是地址抓取它的相關資訊(getLocations),實際操作內容請點我。

2009年5月5日 星期二

序列化(Serialization)

其實看到這個詞已經很久了,但是常常覺得似懂非懂...

今天總算找了一點時間了解這個序列化有何作用。

其實它主要的作用就是為了讓程式保留物件的狀態傳送至目的端,而目的端能夠了解傳送來的物件是什麼。

這對於 OO 來說是一件很重要的事,畢竟,我們自己如果還要花費大量的力氣在傳遞資料以及轉換資料實在是太囧了!