使 Gallery 的亂數取圖不顯示特定相冊

Gallery 中提供了一支叫作 block-random.php 的程式,讓我們可以很容易的作到將圖片內嵌到其他的網頁中,有支援 php 的網頁直接使用 include 即可,例如這個 Blog 右上角的相片就是使用亂數取圖產生的,昨天在 Gallery 裡建相冊放了一些圖給同事們,突然需要起這個功能,因為我不要這些相片出現在 Blog 上頭 (不符主題,因為不是 Photolog 類的),所以小小修改了一下 block-random.php 這支程式,在: [php]$album = chooseAlbum();[/php] 下方增加了幾行: [php]while (substr($album->fields[“title”],0,1) == “[“) { $album = chooseAlbum(); }[/php] 就是說當相冊的 Title 第一個字是 “[” 的時候就再亂數取一次,這時就可以將不想顯示的相冊用 [ ] 包起來。當然,這個方法並不會隱藏相本,只是該相冊不用於亂數取圖這個功能罷了。不過,如果有不顯示的相冊比例大於顯示相冊很多的情況下,可能會影響到亂數取圖的速度囉,有需要的朋友可以參考一下。

March 1, 2005 · 1 min

SPS2003 – CSS Guide

你可能會需要直接修改預設的 CSS 來客製化 SharePoint,在微軟的另一個網站裡有這麼一個網頁,裡頭列出了所有 SPS2003 的 CSS Selector 及範例圖示,相信是一份不錯的參考。 請見 [這裡]

February 24, 2005 · 1 min

如何使用 Google 來準備入侵名單

在 Johnny I hack stuff 網站中的一些資訊也許是最容易讓你知道駭客們是如何使用 Google 的搜尋方法來進行入侵目標的鎖定動作了,因為 Google 實在太強大了,所以才會發展出這樣的應用。在該網站的 Google Hacking Database (GHDB) 中羅列了許多搜尋的關鍵字語法,大家有空可以參考看看,也許再加了自己的網站位址,可以發現自己是不是在目標中。 建議: 網站在回應錯誤訊息的時候,應該要必免使用某些字眼,至於哪些字眼,那你得到 GHDB 中看看才能知道囉。

February 17, 2005 · 1 min

Network Database Files for MS-SQL SAN or NAS?

在 Microsoft Support 中的 這篇文章 文章說明了為甚麼 MS-SQL 在支援 Network Database Files 上只能夠使用 Storage Area Network (SAN) 而不是 Network Attached Storage (NAS),那表示你用網路芳鄰的方式也不能模擬出一個 Network Database Files 環境出來,不過如果真想模擬出這樣的環境的話,可以使用 VM 來 Mount 一個在實體系統上的 Folder 當作 SAN Disk,然後另一個 VM 也 Mount 相同的 Folder,兩邊 VM OS 都僅跑 SQL Service 而不 Handle Database File. http://support.microsoft.com/default.aspx?scid=kb;en-us;304261

February 17, 2005 · 1 min

SPS2003: 定製你的 Portal 外觀 (MSDN)

我們在使用 SharePoint 的時候,較常客製化的是 Team Site 這個 Level 的網站,也就是所謂的 First Level Team Site,但是當你要定製 Portal 的頁面時,會發現它的檔案存放架構與 Team Site 不同。這一篇當作是 Bookmark 吧,瀏覽器上的連結越來越多,得刪掉一些了… :p 微軟在 MSDN 上的這兩篇文章可以作為參考: Branding a SharePoint Portal Server 2003 Site: Part 1, Understanding the Use of a Corporate Brand Part 2, How to Apply Your Own Corporate Brand

February 15, 2005 · 1 min

Philips DVP-642K Firmware 更新

年前在同事的建議下買了這台機器,它比起一般的 DVD Player 貴了許多,但是多了一個重要的功能,就是可以用來播放 MPEG4 的影片,先前我所燒的一些 DivX 影片也都能夠正常的在這台機器上播放。美中不足的是中文字幕的問題,在顯示英文字幕的時候很正常,但是中文字幕卻是亂碼,目前暫時無解。因為試著抓了新的 Firmware 來更新,並沒有解決掉這個問題,也許是 ROM 大小的問題,所以才無法塞下中文字幕吧。 我更新的是 V1109 這個版本的 Firmware,這台機器很有趣,它的更新方法是直接用 CDR 燒錄器燒一片 CD,把它所提供的三個 ROM 檔燒在這片 CD 中,然後直接拿到 DVD Player 去讀取,它會自動進行 Flash 更新動作,官方文件說明如下: How to make an upgrade disc Write dvpxx.rom, dvpxxdv.rom and dvpxxEW.rom files onto a blank CD-R , using the following settings : · File System CD-ROM ISO Level 2 · Mode 1/2/XA · Character set ISO 9660 · Finalised, single session · Write speed slow (e.g. 2x, 4x) Finalize the disc. (The application may do this automatically.) ...

February 11, 2005 · 1 min

Another part to fight SPAMMER

Comment SPAM… 裝了 MT-Blacklist 沒有多大用處,再加上個 SCode 稍微好一點,把 Scode 的數字位數加到八碼之後就減少了許多,但還是有漏網之魚。這幾天以來,發現同一台機器上其它網站的速度變慢,頻寬都因為 SPAM BOT 試著留下 Comments 而佔據,於是著手把 mt-comments.cgi 動了點手腳,加上一行 sleep (10); 呼呼,頻寬馬上就回復了不少。 要留言的朋友請耐心點,等個十秒鐘就送出去囉~~ [修正] 發現這樣改了以後,閱讀 Comment 也便慢了,在 $app->run; 前加上: if ($0="") { sleep (10); }

January 31, 2005 · 1 min

What do you want to PATCH today?

軟體更新的自主 趁著專案的空檔把電腦裡的程式整理了一下,所謂的整理,其實就是打開一些程式,然後從它的 About 視窗確認版本,然後檢查一下官方網頁上是不是有更新的程式,或是較新的版本,從而將一些程式昇級到最新版。估計了一下,我這次昇級了不少的程式,如: gVim, WinSCP3, PuTTY, SharpDevelop 與 FileZilla 等,另外我還看了一篇 Blog 的建議,安裝了 FoxIT PDF Reader 測試 (CJK 還是有點字形上的問題),至於某些不常用,或者平常用起來已經很順手的程式,不升級也罷,以免昇級之後出現更多的問題。 回頭來看看,WB Editor 只是拿來寫 Blog 時貼程式碼的時候用,大多數的 Blog 都是在 gVim 完成的,所以不需要更新。MSDN Library 雖然是去年十月的版本,但是由於工作時都連在網路上,也不需要立即更新 (其實它根本沒有更新功能,每次只能移除重裝,浪費時間)。其它的小工具大概更新也得不到新功能或是得到些用不著的功能,放著不管也無所謂。 在長時間使用電腦之後,我們會發現有許多的程式缺少更新,在用起來順手而又無其他更好的選擇的情況之下,我們仍舊會去使用它。也有許多的程式有創新的內涵,雖然未能有很好的使用體驗,但是由於害怕與新科技脫軌,在軟體經常性更新的情況之下,我們還是樂於追隨與推廣它。 但電腦軟體只是一系列的工具,是不是有統計過自己大約間隔多久的時間需要這樣整理電腦裡的程式? 或者像是許多非新版本不用的人,每天早晨開機就先檢查軟體官方網站是不是有新的版本發佈進而更新。比喻到生活上,我想大概不會有人因為新買的螺絲起子與板手用起來不順手,於是就每天到工具行去看看今天有沒有新貨,然後掏錢再買一個新的來試試。但是由於軟體的昇級實在太方便了,以至於大家忘了這樣作是一種嚴重的時間浪費。 『目前網站上有新的版本,你是否要下載更新。』在彈出這個對話框之前,程式已經自動到官方網站上去取得了一些資訊,當然也使用了一些你的網路頻寬,某些軟體並不具有這樣的功能,你可以說它倡行網路環保。有時候我們是真的需要這樣的功能 (碰上新科技有經常更新的玩具),但大多數的更新軟體又不能夠設定多久檢查一次,它在你每次開啟應用程式就進行一次檢查,這對網路頻寬的使用相當的不環保。另一個不環保的現象是當你的電腦裡裝了幾十套不同的軟體,但是他們並未使用一致的更新檢查程式碼,各自有自己的一套,那麼,他們在你的硬碟中佔據了多少的硬碟空間,在你一天工作中的八個小時的時間中,又耗用了多少網路頻寬來進行更新檢查?? 你也不能完全乎略掉某些軟體更新。在某些嚴重性高的更新,我們會需要立即的獲得通知,否則它可能會危害到你資料的安全。也許我們需要一個通用的軟體更新工具,具有自主設定功能,可以針對使用者角色來設定優先性,獲得嚴重性評估,自動背景化的更新 (也許支援通用及一致化的 RSS Feed),用來節省時間、增進工作效率,並且因而獲得比現在更佳的使用體驗。

January 25, 2005 · 1 min

在 Windows 讀取 ReiserFS 分割區資料

RFSTOOL 可以讓你在 Windows 系統下直接讀取 ReiserFS 分割區中的資料,它使用命令列模式,比方說我們可以使用下列的指令: rfstool cp movie e:\movie 來複製資料檔案到 Windows 的分割區中。唯一點缺點是速度不夠快,所以某些使用這個工具所寫的 GUI 程式常常會 Hang 住,不如直接使用命令列來得方便。 RFSTOOL: http://p-nand-q.com/download/rfstool.html

January 20, 2005 · 1 min

SPS2003 – 使用指定使用者權限操作文件庫

在 SPS2003 中撰寫簡單的 Workflow 或是對特定權限設定的目錄進行操作時,某些情況下我們會希望不以目前網頁登入使用者的權限進行操作,使用特定使用者的權限操作有許多種方法,我曾見過 Oliver Lu 用了 WebRequest 來設定 Credentials 的方式來作到這樣的功能,只不過他說的是 Single Sign-On 的部分。 關於 Impersonate 的方式,我另外 Google 了一下其他人的作法,發現 Jay Nathan 所寫的這一個 Class 挺好用 (但是他寫的實作方法並不太好用… :p ),主要是可以用來 Impersonate 不同的使用者進行操作,且不是經過 WebRequest 來模擬使用者透過 Browser 操作,也就是說你還是可以使用原來的程式碼進行操作,在最後才綁上安全設定。 我寫了一個簡單的 Webpart 來進行測試,程式片段如下: [csharp]protected override void RenderWebPart(HtmlTextWriter output) { string strOutput = “YOU ARE: ” + this.Context.User.Identity.Name.ToString() + “ ”; Impersonator i = new Impersonator(”username”,”domain”,”password”); i.Impersonate(); strOutput += “NOW YOU ARE: ” + this.Context.User.Identity.Name.ToString() + “ ”; ...

January 12, 2005 · 1 min