2010年5月29日 星期六

mojoPortal Image Gallery(圖庫) 中 Silverlight 無法使用之問題

今天福克斯設定了一個 Image Gallery(圖庫) 在某個頁面上。設定的時候,福克斯發現,裡面居然有一個用 Silverlight 來呈現圖片的功能。

福克斯當然很開心地把它給勾選起來,可是,試了再試,怎麼試都是一遍黑,什麼東西都沒有。

最後福克斯只好放棄,打開它的 HTML 原始碼起來看,並且一一做測試。

在測試的過程中發現,它的 Silverlight 的 binary 是放在:ClientBin/Vertigo.SlideShow.xap。可是,福克斯用 browser 就是無法找到它。

後來,福克斯想起來, Windows 2003 如果沒有設定 MIME Type,它將無法被下載回去。

所以,只要打開 IIS 6 在本機電腦的項目上按右鍵,選擇內容,並在 MIME Type 上加入: .xap => application/x-silverlight-app 的對應。它就可以正常運作了。

ps. 通常 Server 都不會灌這種 Silverlight 或 Flash 的東西,所以即使福克斯的電腦有灌,還是沒辦法在 mojoPortal 中看到的.....

2010年5月26日 星期三

mojoPortal - 開啟 SMTP 設定值

mojoPortal 的 SMTP 設定是在 web.config 中進行設定。可是,一般的 CMS 都有辨法在使用者介面中進行設定,為什麼 mojoPortal 為行呢?

其實,它也是可以的,不過,要使用比較 tricky 的方法。在 web.config 中,有一個參數叫 EnableSiteSettingsSmtpSettings,它可以讓每一個站台有自己的 SMTP 設定。把這個值改成 "true" 之後,就可以在設定畫面中,可以找到專屬的 SMTP 設定。範例如下:

<add key="EnableSiteSettingsSmtpSettings" value="true"/>

其中,這裡的『每一個站台』是指,mojoPortal 可以建立多重站台的功能。當我們把這個值改成 "true" 時,每一個站台都能設定專屬的 SMTP 了。

如果大家想要固定 SMTP 的設定值的話,也可以修改 web.config 的下面設定:
<add key="SMTPServer" value="localhost/">
<add key="SMTPRequiresAuthentication" value="false"/>
<add key="SMTPUseSsl" value="false"/>
<add key="SMTPPort" value="25"/>
<add key="SMTPUser" value="UserName"/>
<add key="SMTPPassword" value="UPassword"/>
<add key="SMTPTimeoutInMilliseconds" value="30000"/>



讓 Windows Application 變成一個 Service

要讓一個 Windows Application 變成一個 Windows Service 可以使用 Windows Resource Kits。由於福克斯是使用 Windows 2003 Server,所以可以從這裡找到載點。

最主要的方式是使用 InstSrv.exe 跟 SrvAny.exe 這兩個程式。完整的流程可以參考 Microsoft 的這個網頁:http://support.microsoft.com/kb/137890在這個網頁中,我們可以依照順序建立一個 service,不過卻無法指定執行的路徑及程式的參數。這個問題可以在 registry 中加入下面兩個字串值即可:

AppDirectory:程式執行路徑
AppParameters:程式的參數

使用 SrvAny 來建立 Windows Service 其實還有另一個大問題:無法得知停止服務的訊號。這部份福克斯還正在測試當中,如果有什麼好消息會發在另一篇文章之中。

2010年5月25日 星期二

mojoPortal - 將 Administration, 文件管理等項目從頁面中移除

最近,福克斯在學習如何使用 mojoPortal。當然,這也是跟公司的事情有關係。mojoPortal 具備還算完整的功能,只不過,有些項目的畫面中文化並不完全。

另外,也由於時間的關係,福克斯無法深入研究 mojoPortal 的修改方式。所以,只好使用無敵大絕招:把一些不安全的項目從選單中移除。

移除的方法其實很簡單,因為 mojoPortal 是使用 Master Page 的方式。

所以,我們只需要修改一下 skin 中的 layout.Master ,將下面項目註解起來就可以了:

<!--
<portal:adminmenulink id="lnkAdminMenu" runat="server">
<portal:filemanagerlink id="lnkFileManager" runat="server">
-->

2010年5月12日 星期三

IIS7 Microsoft VBScript runtime error '800a01ad'

Fox met this problem this morning. After some investigations, Fox found that it is caused by the 64bis and 32bits.

This problem will happen only if you install a 32bits component in a 64 bits machine. To solve it can be done by changing the "Application Pool" setting of your webapp or website to support 32 bits(right click on your application pool and choose advanced settings).