跳到主要內容

發表文章

目前顯示的是 12月, 2008的文章

停用Vista的Superfetch的新功能

隨著Vista進入sp1且越來越多的使用者開始詢問Vista相關問題,身為一個IT相關人員,根本就還沒有用過Vista這個 東西 系統,實在很難回覆使用者眾多奇怪的問題(Windows永遠都有怪問題),所以近來新購的筆電和家裡的桌上型電腦,就開始使用這一年前不想接觸的Vista作業系統。 使用Vista至目前,除了需要大大地硬碟空間(幸好現在硬碟便宜)、較高的硬體性能,倒也沒啥大問題,只不過有一點另我不解的...硬碟燈一直很忙碌的在閃爍。雖然平常是個閒不下來的過動兒,但也不需要再沒使用硬體時來個不忙裝忙。參拜了一下Google大神,多半將這不停裝忙的硬碟,歸因於Vista的新功能「Superfetch」。 什麼是Superfetch?參考了一下旗標知識網: Vista 執行效能大提升的秘密 - SuperFetch (想瞭解詳細內容請參考旗標知識網的連結) 簡單的說就是會先幫使用者作預載的動作,Superfetch利用新的演算法將使用者可能會用到的程式預先載入到記憶體中,包含使用者常用程式、或搭配某程式的相關程式、或使用者使用習慣,很貼心的讓使用者感覺用起來效能很好(開啟程式速度很快),但是用硬碟這種行為也是有人擔心會提早使硬碟掛點,重買硬碟是小事但是資料無法救回就傷腦筋了。 關閉Superfetch的方法,常見的有兩種: 1.由控制台關閉Superfetch服務 停用方式如下: 開始 → 控制台 → 傳統檢視 → 系統管理工具 → 服務 → 找 SuperFetch → 「服務狀態」選擇 停止 → 啟動類型 修改為 停用 2.直接修改登錄檔,停止Superfetch服務 修改前先備份登錄檔,開始 → 執行(或Win鍵+R) → 輸入regedit 「登錄檔編輯程式」後,找到資料夾「 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters 」,找到「EnablePrefetcher」跟「EnableSuperfetch」兩個項目上二點兩下滑鼠左鍵,修改這兩個DWORD的數值為 0 ,重新開機後生效。如果修改後發生問題,記得將兩個值再修改回 3 。

PHP檔案非直接開啟,使用header下載

對於瀏覽器自作聰明貼心的幫使用者開啟相關檔案,有些時候會需要使用者下載檔案,而非使用直接開啟的方式,如開啟PDF則會離開原網頁頁面的情形。 而Jeffy則是希望除了非直接開啟外,在下載時也可將檔案重新命名讓使用者不知道檔案原本的檔名和位置,下面的程式碼可以達成。 header檔案下載 //First, see if the file exists if (!is_file($file)) { die(" 404 File not found! "); } //Gather relevent info about file $len = filesize($file); $filename = basename($file); $file_extension = strtolower(substr(strrchr($filename,"."),1)); //This will set the Content-Type to the appropriate setting for the file switch( $file_extension ) { case "pdf": $ctype="application/pdf"; break; case "exe": $ctype="application/octet-stream"; break; case "zip": $ctype="application/zip"; break; case "doc": $ctype="application/msword"; break; case "xls": $ctype="application/vnd.ms-excel"; break; case "ppt": $ctype="application/vnd.ms-powerpoint"; break; case "gif": $ctype="image/gif"; break; case "png