2007年12月12日 星期三

svchost.exe 佔掉CPU資源100%

轉載自: http://www.yannicafe.info/wp/2007/02/18/61.html


svchost.exe 吃掉所有 CPU 資源的原因很多,不過我的狀況都是在執行 Windwos Update 時發生的(或是自動更新服務 Automatic Updates 執行時)。因此解決方法主要就是把 Windows 的自動更新重設一次,步驟如下:

一、首先檢查系統服務的狀態。
1. 點「開始」–>「執行」,輸入「services.msc」後按「確定」。
2. 在服務「Automatic Updates」上點二下。
3. 點選「登入」頁籤,確定登入身分為「本機系統帳戶」且「允許服務與桌面互動」“沒有”被選取。
4. 確認服務已在目前的「硬體設定檔」中被啟用,如果沒有,按下「啟用」按鈕。
5. 點選「一般」頁籤,確定「啟動類型」為「自動」,然後按下「啟動」按鈕以啟動服務。
6. 對「Background Intelligent Transfer Service (BITS) 」服務重覆 2 ~ 5 的步驟。

二、接著重新註冊 Windwos Update 的元件。
1. 點選「開始」–>「執行」。
2. 輸入「REGSVR32 WUAPI.DLL」後按 Enter。
3. 當看到 “DllRegisterServer 在 WUAPI.DLL 成功” 的訊息後按下「確定」。
4. 重覆上述步驟重新註冊下列元件
REGSVR32 WUAUENG.DLL
REGSVR32 WUAUENG1.DLL
REGSVR32 ATL.DLL
REGSVR32 WUCLTUI.DLL
REGSVR32 WUPS.DLL
REGSVR32 WUPS2.DLL
REGSVR32 WUWEB.DLL

三、最後清除可能已損壞了的 Windows Update 暫存目錄。
1. 點「開始」–>「執行」,輸入「cmd」後按「確定」。
2. 在命令提示字元中鍵入以下指令。(若出現錯誤訊息請先重開機後再報執行一次
net stop WuAuServ
2. 點「開始」–>「執行」,輸入「%windir%」後按「確定」。
3. 找到「SoftwareDistribution」並更名為「SDold」。
4. 點「開始」–>「執行」,輸入「cmd」後按「確定」,並在在命令提示字元中鍵入以下指令。
net start WuAuServ


補充:

-software Distribution 要在safemode下清除。一般模式下會有防寫保護。

-可以簡單地,開啟IE,執行window update,在左手邊的變更設定(Change Setting),選擇關閉Microsoft Update並只使用window update...


2007年12月10日 星期一

Javascript 指定日期與現在時間相減

var strDate1 = "2000-10-25";
var now, s = "";
now = new Date();
now.setDate(now.getDate());
s += now.getYear()+"-";
s += (now.getMonth() + 101).toString().substring(1,3)+"-" ;
s += (now.getDate()+ 100).toString().substring(1,3) ;
strDate2 = s;
strDate1=strDate1.replace(/-/g,"/");
strDate2=strDate2.replace(/-/g,"/");
var date1 = Date.parse(strDate1);
var date2 = Date.parse(strDate2);
if (Math.ceil((date2-date1)/(24*60*60*1000))<=6573) { //未滿18
alert('你未满18岁');
}

這支Script可以在網頁檢查兩個日期是否相差18年整..

2007年12月7日 星期五

Outlook2003 每個郵件帳戶個別設定傳送與接收


Outlook 2003以Group的形式去Send&Receive, 只要在Tools->Option裡,依照上圖所指示去設定你的每個郵件帳戶是否包含在傳送與接收中。

2007年11月21日 星期三

如何在Blogger中編寫帶圖片的文章更有效率?

我想雖然很多人都知道,但一般使用者可能會單純使用Blogger的編輯器去寫文章,再加上blogger的圖片上傳都頗為麻煩,上傳後還要把圖剪下貼上移來移去格式又走位等等,所以我介紹一下我Post文章時,如果需要在文章中附帶很多圖檔,怎樣做才會比較有效率。

首先你需要一套網頁編輯工具,我是使用FrontPage,比較簡單。另外你不需要另外再找一個存放相片網站去放你的圖,本篇介紹的圖依然是上傳到blogger上。

首先把這次要使用到的圖(有用或將要用到或可能用不上也好)都上傳到你正在編輯的文章中,一次可以上傳5個圖檔。上傳後你會看到你剛上傳的圖片,先不要發佈,打開網頁編輯軟體開始寫文章,當寫到需要圖檔的段落時,把blogger上你需要的圖Copy and Paste到你的網頁編輯軟體中,直至寫好你的文章。

好,當你在網頁編軟體上寫好你這次要發的文後,把他全選,然後Copy,整整覆蓋在Blogger的編輯器中。

完成。

Written by Ivan Ng 2007-11-21

2007年11月16日 星期五

kernel32.dll 出錯解決方案

使用Windows 9x/Me的朋友最害怕的便是突然屏幕上出現「非法操作」的提示,而其中的顯示信息又常常涉及kernel32. dll這個文件,那麼kernel32.dll是什麼,如何應對與解決這類問題呢?相信下面這篇文章會為你指點迷津。
  kernel32.dll
  一、什麼是kernel32內核文件
  kernel32.dll是Windows 9x/Me中非常重要的32位動態鏈接庫文件,屬於內核級文件。它控制著系統的內存管理、數據的輸入輸出操作和中斷處理,當Windows啟動時, kernel32.dll就駐留在內存中特定的寫保護區域,使別的程序無法佔用這個內存區域。
  有時,Windows會彈出「非法頁錯誤」的消息框,簡單地說,這是因為某個或多個程序試圖訪問kernel32.dll所佔用的內存保護區域,從而產生衝突而造成的。該錯誤一般由某個特定的程序引起,也可能是多個文件或程序。如果是由某個程序引起,那麼可以嘗試重新安裝或升級該程序來解決問題,而如果由多個文件和程序引起,那就極有可能是因損壞的硬件設備驅動而引起的。
  二、引起kernel32出錯的主要元兇
  1.Windows自身的臨時交換文件被破壞;
  2.文件分配表(FAT)出現錯誤;
  3.用戶名和密碼列表錯誤;
  4.裝載了已經被破壞的或者是不正確版本的ker -nel32.dll文件;
  5.註冊表文件被損壞;
  6.計算機硬件有問題,如CPU過熱、超頻使用、損壞的電源、地線波動、射頻噪音、損壞的磁盤控制器;
  7.BIOS中等待狀態設置出現問題,或者RAM時鐘有錯誤;
  
  8.已經損壞或者沒有正確、完整地安裝軟件;
  
  9.臨時文件夾不存在或者已經損壞;
  
  10.損壞的控制面板文件(擴展名為cpl);
  
  11.不正確或者已經損壞的硬件驅動程序;
  
  12.沒有正確安裝打印機驅動程序;
  
  13.Java設備錯誤;
  
  14.已經被破壞的.LOG日誌文件;
  
  15.訪問歷史文件夾錯誤;
  
  16.不合適的或損壞的動態鏈接庫文件;
  
  17.機器感染了病毒;
  
  18.損壞的或者不正確版本的msinfo32.exe文件;
  
  19.磁盤空間不足。
  
  三、行之有效的解決方案
  知道了哪些情況可能引起kernel32.dll文件出問題,那麼就可以採取排除法一一解決。不過,在大多數情況下,我們建議你優先實施以下解決方案:
  
  1.錯誤的內存模塊:用「記事本」打開根目錄下的config.sys,並在其中插入命令行:DEVICE=C:\WINDOWS\HIMEM.SYS /TESTMEM:ON,然後在電腦重啟時觀察屏幕所顯示的HIMEM has detected unreliable memory at address xxxxxxxxx,這樣就可以基本確定內存出了問題。不過,這可能需要重啟幾次來逐一發現。當然也可以下載、運行相應的系統診斷軟件,特別是內存檢測軟件;
  
  2.錯誤的顯卡驅動程序:最新版本的顯卡驅動程序可以保證顯卡更加穩定、高效地運行,因此你要確保顯卡驅動程序是最新版本;
  
  3.超頻CPU、總線速度:如果想要你的電腦運行得更加穩定、持久,建議不要將CPU和總線超頻使用,恢復到默認值;
  
  4.CPU或者電源風扇轉速不正常或落滿灰塵:風扇的不穩定可能導致CPU或電源溫度過高,從而引起系統不穩定。CPU風扇可以用小刷子和吹風機處理,電源風扇則需要由專業人員清掃;
  5.圖形加速設置過高:右擊「我的電腦」,選擇「屬性」命令,在「性能」選項卡中選擇「圖形」按鈕,將硬件加速調低一個刻度,然後確定後重啟,如果還有問題,再重複以上步驟繼續往下調低一個刻度,直到正常為止;
  6.動畫光標、鼠標軌跡和活動桌面:這些花哨的設置都有可能引起kernel32.dll錯誤,嘗試禁用這些功能,然後再一個一個激活這些功能,直到發現錯誤為止;
  
  7.相當有效的解決方案:實踐證明這個方法解決過許多ker- nel32.dll崩潰的問題。在C盤根目錄下,用「記事本」創建或者直接修改系統配置文件config.sys,在其中加入如下3行語句:
  
  FILES=65
  
  BUFFERS=40
  
  STACKS=64,512
  
  如果錯誤仍然存在,可使用「記事本」打開系統文件夾下(如〈C:\Windows\〉)的system.ini文件,然後在[386Enh]節上加入如下兩行語句:
  
  ; Increases default stack pages from 2 to 6
  
  MinSPs=6
  
  (MinSPs默認值是2,如需要,每次增加2直到解決問題為止,而第一句前面的「;」主要起註釋作用。)
  
  修改好後保存退出,重啟使之生效。
  
  8.刪除臨時交換文件:如果錯誤仍然存在,可以嘗試刪除 Windows的臨時交換文件Win386.swp來解決問題,不過該文件無法在Windows下刪除,你需要退到DOS實模式下進行,進入系統目錄(如 C盤〈Windows〉目錄)刪除Win386.swp,當系統重啟後Windows會重新生成該文件。
  
  9.密碼列表損壞:如果系統密碼列表文件被損壞也會引起錯誤,這時需要重建該文件,在「資源管理器」中選擇〈Windows〉文件夾,然後按下F3調出查找對話框,在文件名中鍵入:*.pwl,然後進行查找,當符合條件的文件列出來後,將它們全部刪除掉,接著重啟,讓系統重建密碼列表文件。
  
  10.病毒:如果系統顯示的是MSIMN錯誤導致kernel32.dll產生無效頁面錯誤,那麼你的電腦很有可能被Happy 99蠕蟲病毒所侵害,你需要使用殺毒軟件對你的系統進行一下清除。

2007年10月26日 星期五

apache 部份參數說明 III

無法查看此摘要。請 按這裡查看文章。

apache 部份參數說明 II

轉載自http://redhat.ecenter.idv.tw/bbs/showthread.php?s=&threadid=24929
作者 Eric

part II

# 語法:ServerType [standalone/inted]
# 說明:定義 httpd 的啟動方式
# standalone:開機後立即執行,效率較高,http獨立執行,即使沒有瀏覽者連入本網站,

都會啟動httpd以隨畤提供服務。

# inted:需要時才臨時啟動,監聽所有進入本機請求的port,然後核對port所對應的服務

以決定要用哪一個服務,再執行httpd,當請求完結就將httpd結束。

 

# 語法:Port [編號]
# 說明:指定 httpd 服務的閘道,一般是 80,
# 2000 以後的 URL 就必須寫成 http://xx.xx.xx.xx:2000/
 

# 語法:HostNameLookups [on/off]
# 說明:設定要不要把自動搜尋 HostName 的功能打開
# 設定為on時,則會記錄進入此網站使用者的主機名稱(例如fo23.flag.com.tw)

# 設為off,則僅記錄使用者主機的IP(例如203.74.205.23)

 

# 語法:User [username/#uid]
# 說明:設定 httpd 這程式的執行者是誰.
# 一般是 nobody,也可以是已註冊的 user,若用 user id 要加上 # 號


# 語法:Group [groupname/#gid]
# 說明:設定 httpd 這程式的執行者所屬的群組
# 一般是 nogroup,此 group 必須要存在於 /etc/group 中


# 語法:Server Admin [E-mail 位址]
# 說明:設定此 web 站管理者的 E-mail位址,在系統發生錯誤時,方便與管理者聯絡


# 語法:ServerRoot [目錄的絕對路徑]
# 說明:設定 apache 所安裝的絕對路徑,所有網站相關的襠案都存放在此目錄中
# 舉例:ServerRoot /usr/local/apache

 

# 語法:BindAddress [*/IP/FQDN]
# 說明:強迫 apache 只對某個特定位址反應, * 則是對所有位址都反應
# 如果要採用 Virtual Host 虛擬主機功能,務必要設為 BindAddress *
# 說明:設定要以哪一個 address 來服務,可使用 IP 或完整的主機名稱(FQDN),
# * 是全部接受

# 當使用虛擬主機功能畤,一台電腦上可能有幾張網路卡分別設定不同的IP。BindAddress

設為*,表示系統會監聽每一個IP的連線;設為IP值,則僅監聽該IP的連線;亦可設定為

domain name,僅監聽來自該處的連線

 

# 語法:ErrorLog [檔案名稱]
# 說明:記錄執行 apache 時所產生的錯誤訊息,如果檔名不是以 / 開頭,那就不會連
#  接到 ServerRoot 的路徑下
# 舉例:ErrorLog logs/error_log
# 將錯誤訊息放在 /usr/local/apache/logs/error_log 中
# apache 的 root directory 在 /usr/local/apache

 

# 語法:LogLevel [debug/info/notice/warm/error/crit/alert/emerg]
# 說明:設定 error_log 中記錄的錯誤訊息種類,建議值是 warm,越右邊越簡略


# 語法:CustomLog [檔案名稱][combined/common/referer/agent]
# 說明:同 ErrorLog 部份 ,是屬於傳輸記錄,並起設定該記錄所記錄的資訊
# 舉例:CustomLog logs/access_log common (common 是建議值)
# 越右邊的參數越簡略
# 若 user 多時,此檔會變很大,要小心管理

# LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined

# LogFormat "%h %l %u %t \"%r\" %>s %b" common

# LogFormat"%{Referer}@->%U"referel

# LogFormat”%{User-agent}i"agent

# 設定每筆記錄的楁式,有 combined、common、referer與 agent四種

# The location of the access logfile (Common Logfile Format)

# If this does not start with /, ServerRoot is prepended to it.

# CustomLog/usr/local/apacHe/Var/log/access_log common

# 存取記錄的位置,使用Comon格式

# If you would like to have an agent and referer logfile uncomment the

# following directives.

# CustomLog/usr/local/apache/var/log/referer_logreferel

# 記錄瀏覽者經由本網站所連結出丟的網址,使用refere「自訂格式

# CustomLog/usr/local/apache/var/log/agent_logagent

# 記錄瀏覽者連到本網站所使用的瀏覽器版本與種類,使用agent自訂格式

# If you prefer a single logfile with access, agent and referer information

# (Combined Logfile Format) you can use the following directive.

# CustomLog /usr/local/apache/var/log/access_log combined

 

# 語法:PidFile [pid-filename]
# 說明:記錄 httpd 啟動時的 PID,以方便管理員的管理;方便重新啟動時做參考,
# 這樣就不必用 ps 來尋找
# 舉例:PidFile logs/httpd.pid

# PidFile /usr/local/apache/var/run/httpd.pid ←紀錄httpd的 PID

 

# 語法:ScoreBoardFile [檔案名稱]
# 說明:紀錄被使用過的檔案
# 舉例:ScoreBoardFile logs/apache_runtime_status

 

# 語法:ServerName [主機名稱]
# 說明:設定該伺服器的 Domain Name ,此名稱必須是已經向貴網域的 DNS 註冊。
# 舉例:ServerName http://www.hmes.kh.edu.tw ← 若沒有一個登記的DNS name,則請改為IP

 

# 語法:CacheNegotiatedDocs

# 說明:當使用者藉 Proxy 來讀取 Web Server 時,Apache Httpd 會送出 Pragma:

# no-cache 的檔頭使得 Proxy Server 不會把他留在 cache 中。

 

# 語法:Timeout [秒數]

# 說明:設定 httpd 等待使用者下一個指令的時間,如果在此時間內使用者沒有回應

# ,則終止服務,如果網路速度慢,時間設長一些。

# 舉例:Timeout 300



# 語法:KeepAlive [on/off]
# 說明:設定是否接受使用者之連續請求。

 

# 語法:MaxKeepAliveRequests [數目]
# 說明:設定能接受之最大連續請求量,如果連續請求超過此數量, server 會自動踢掉。
# 舉例:MaxKeepAliveRequests 100 ←每次連線可提出要求數量,設為0表示不限次數,頇設為100

 

# 語法:KeepAliveTimeout [秒數]
# 說明:設定使用者連續請求等待的時間上限,如果 user 連續請求的時間超過此數,則
# 不再執行此請求
# 舉例:KeepAliveTimeou 15 ←下個要求如果超過多少秒還未到達,則視為連線結束


 

# 語法:MaxSpareServers [數量]
# MinSpareServers [數量]
# 說明:設定閒置來等待服務的伺服器數量,當系統的閒置個數小於此設定時,系統會開
# 啟更多的 server 來服務;當系統的閒置個數大於此設定時,多餘的個數會被刪
# 掉;如果 web 使用率高,應加大 MinSpareServers
# 舉例:MaxSpareServers 10 MinSpareServers 5

 

# 語法:StartServers [數量]
# 說明:一開始驅動 apache httpd 時,閒置等待服務的伺服器數量
# 舉例:StartServers 5 ←(執行ps-aux指令就可以看到這5個serverprocesses)

 

# 語法:MaxClients [數量]
# 說明:設定最多能提供給幾個 user 同時連線
# 舉例:MaxClients 150 ←因為同時連進來的數目大多時,會降低系統存取的效能,可設

定此數值限制同時連線進來的數目,若您的系統CPU很快、記憶體很多且效能很

好時,可以考慮將此值調高.否則就降低一點

 

 

# 語法:MaxRequestsPerChild [數量]
# 說明:設定每個子程序所能接受的最大服務次數,當達到此數目時,子程序會自動關閉
# 舉例:MaxRequestsPerChild 30


 

# 語法:ProxyRequests [On/Off]

# 說明:開啟或關閉 Proxy 的功能,內定值是關閉,大部份情況也是關閉。用標準安裝時,

Apache並沒有將 proxy 模組加入,若需要此功能,請參考INSTALLS檔的誽明。



# 語法:..
# 說明:虛擬主機的設定;在做此設定之前,必須有支援 multipule address 或有一片
# 以上的網路卡

# 舉例:
# NameVirtualHost 203.72.230.212 ## 一定要設,apache 1.3以上才有的改變
#
# ## 第一部份


# ServerAdmin webadmin@hmes.kh.edu.tw

# 設定虛擬主機的管理者信箱,不一定要和本機的網站管理者相同


# DocumentRoot /www/docs/
# 指定虛擬主機的網站主目錄


# ServerName wwwa.hmes.kh.edu.tw ##設為 VirtualHost 的名稱
# 指定虛擬主機的URL


# ErrorLog logs/?? ??

# 虛擬主機發生錯誤時要記錄在哪個目錄


# TransferLog logs/??

# 虛擬主機存取記錢要存放的目錄


#


# ##第二個 DNS ## 第二部份
# ServerAdmin webadmin2@hmes.kh.edu.tw
# DocumentRoot /www/docs2/

# ServerName wwwb.hmes.kh.edu.tw

# ErrorLog logs/??
# TransferLog logs/??
#

相關連結:apache 部份參數說明 I ; apache 部份參數說明 III


Apache 部份參數說明 I

轉載自http://redhat.ecenter.idv.tw/bbs/showthread.php?s=&threadid=24929
作者 Eric

apache 部份參數說明 I

Part I

AllowOverride 的屬性功能

AllowOverride Limit 允許蓋掉原聯結屬性得範圍
AllowOverride Authconfig 可做密碼設定:如:藏密
AllowOverride Options 可將該目錄之Options 功能覆蓋
AllowOverride FileInfo 可將該目錄之任何文件型態覆蓋,如:DefaultType,ErrorType
AllowOverride Indexs 可將該目錄之顯式列印功能覆蓋,如:AddIcon,HeaderName.ReadName

Options的屬性功能

Indexs 當無index.html可用列印目錄方式顯式,如:center3 homepage 若用 -Indexs 則看不見 listing
FollowSymLinks 加一屬性如+FollowSymLinks可允許使用symbol link 時,依舊可瀏覽
ExecCGI 當為 +ExecCGI可執行 CGI SCRIPT
Includes 可執行Server site include,若為 +Includes
IncludesNOEXEC 可執行Server site include,若為 +Includes,但不可執行CGI
None 沒有任何功能可用
All 均可
總之,以 +, - 符號可加或刪減其功能,若未給符號,則只有初步功能

Limit的屬性功能

GET 限定取得文件法,如:
POST 限定cgi post方法,如:
order 限定拒絕或允許的次序
deny 限定拒絕範圍,如:deny from all 或 deny from .mycompany.com
allow 限定允許範圍,如:allow from all 或 allow from 192.153.22

AuthConfig 之方法 & .htaccess 範例


#與Directory同,但在 .htaccess 只能用他 AuthName Members-only 設定僅 Member 才可入,僅為名稱 AuthType Basic 解碼方法 AuthUserFile /home1/users/center/center21/public_html/wwwclass/bau
#密碼表位置(絕對位置) AuthGroupFile /home1/users/center/center21/public_html/wwwclass/group
#同群表位置

#限制取件
require user center21
#bau的密碼表有很多user,但....
order allow,deny
#先允許在拒絕
allow from all
#允許全部



密碼表之產生方法

找到及取得htpasswd程式
執行htpasswd -c filename username (第一次,以後僅htpasswd filename username)
修改需要的 user (在 require 後)

require用法

require user center21 center3
require group cc cv ee

相關連結:Apache 部份參數說明 II ; Apache 部份參數說明 III






2007年10月25日 星期四

在window2003上安裝Linksys CIT200

因為Linksys CIT200 Skype Phone只支援Window2000和XP,在官方網站上download的驅動程式也會檢測系統是2000或XP予放行。
但其實還是有方法在Window2003 Server上安裝CIT200。

首先到Skype官網上下載setup_webCIT200_dr.zip並解壓它。
到http://www.microsoft.com/technet/sysinternals/utilities/filemon.mspx裡下載filemon.exe

執行filemon.exe
執行setup_web CIT200.exe

在filemon.exe中觀察setup_web CIT200.exe拷貝了檔案到哪個安裝路徑。

到那個安裝路徑中把CIT.msi Copy出來放在任一位置。如 D:\CIT\

打開「命令提示列」,到你剛剛建的位置(如 D:\CIT\)執行msiexec /a CIT.msi

程式會詢問你把檔案解壓縮放到哪? 擺放要解壓的檔案在你要安裝的路徑。如 C:\Program Files\CIT200\

解壓完後,到你剛剛指定解壓的路徑,你會看到一個program files\linksys\,並在裡面找到CIT200.exe

右鍵點擊CIT200.exe並開出「內容」。

到「相容性(Compatibility)」一頁,設定相容於XP中運行。

安裝Skype
插好電話接收器

雙擊CIT200.exe

然後就可以使用CIT200打電話了。

2007年10月24日 星期三

Jmail 範例程式

這支程式碼可以處理複數收件人的郵件寄發,使用密件副本讓收件者看不到你群發給誰。

Function SendMail(source,address,subject,body,smtpip)
Dim Sender
Dim Charset
Dim Region

Set jmail = Server.CreateObject("JMail.Message")
'寄信前的一些設定
jmail.Charset = "big5"
jmail.ContentType = "text/html"
jmail.From = source '寄件人
jmail.Subject = subject '郵件主指

jmail.Silent = true
jmail.ISOEncodeHeaders = false
jmail.HTMLBody = body
'////////////////////////////////////////////////////////////////////////////


'加入使用者地址,BCC是密件副本
for i = 0 to ubound(address)-1
jmail.AddRecipientBCC BCC(i)
next

'設定使用的SMTP的Server需要用到的用戶名稱和密碼。如果不需要寄件認證,可留白。
jmail.MailServerUserName = "exampleuser"
jmail.MailServerPassword = "examplepassword"


SendMail = jmail.Send(smtpip) '發出郵件
Set jmail = Nothing

End Function

Dim strContent '郵件內容
Dim BCC '收件人的陣列

strContent = "Something" '設定郵件內容
BCC = ("abc@123.com","cde@456.com","efg@789.com")
subject = "郵件主旨"
smtpip = "111.222.333.444" 'SMTP的地址

status = SendMail("sendmail@example.com",BCC,subject,strContent,smtpip)


Jmail的屬性和方法

Body : String
(v3.0)
E-Mail的主體
JMail.Body = "Hello world"

Charset : String
(v3.0)
設定郵件的字符集,默認為"US-ASCII"
JMail.Charset = "US-ASCII"

ContentTransferEncoding : String
(v3.0)
指定內容編碼, 默認為 "Quoted-Printable"
JMail.ContentTransferEncoding = "base64"

ContentType : String
(v3.0)
這個郵件的頭設置, 默認為 "text/plain" 能設
置成你需要的任何情況。 你想發送HTML信息,改這個頭文件為 "text/html"
JMail.ContentType = "text/html"

DeferredDelivery : Date
(v3.0)
設置時間。 如果MAILSERVER服務器支持,可以設置何時發送郵件。
JMail.DeferredDelivery = new Date( 2000, 02, 17 ).getVarDate();

Encoding : String
(v3.0)
This can be used to change the default Attachment encoding from base64. Valid options are

"base64", "uuencode" or "quoted-printable"
JMail.Encoding = "base64"

ErrorCode : Integer
(v3.0)
報錯誤信息,如果JMail.silent被設置成true
Response.Write( JMail.ErrorCode )

ErrorMessage : String
(v3.0)
報錯誤信息,如果JMail.silent被設置成true
Response.Write( JMail.ErrorMessage )

ErrorSource : String
(v3.0)
報錯誤信息,如果JMail.silent被設置成true
Response.Write( JMail.ErrorSource )

ISOEncodeHeaders : Boolean
(v3.0)
頭信息代碼按照iso-8859-1字符設置。 The default is true.
JMail.ISOEncodeHeaders = false

Lazysend : Boolean
(v3.0)
這個屬性是將郵件放入緩衝直至發出為止,的不到任何的錯誤信息
JMail.LazySend = true;

Log : String
(v3.0)
當loging被設置後,這個LOG被JMAIL生成
Response.Write( JMail.Log )

Logging : Boolean
(v3.0)
能/不能登陸用JMAIL
JMail.Logging = true

MailDomain : String
(v3.0)
可以忽略 EHLO/HELO 狀態對你的mailserver
JMail.Maildomain = "hello.world.com"

MimeVersion : String
(v3.0)
專門的 mime 版本. The default is "1.0"
JMail.MimeVersion = "1.0"

Priority : Integer
(v3.0)
郵件的優先級,可以範圍從1到5。
越大的優先級約高,比如,5最高,1最低
一般設置為3
JMail.Priority = 3

Recipients : String
(v3.0)
這個信息的接收者只有只讀屬性
Response.Write( "" + JMail.Recipients + "" )

ReplyTo : String
(v3.0)
指定一個可選的回信地址
JMail.ReplyTo = "president@dimac.net"

ReturnReceipt : Boolean
(v3.0)
是否按寄件人的要求回信,默認是"false"
JMail.ReturnReceipt = true

Sender : String
(v3.0)
郵寄的地址
JMail.Sender = "batman@dimac.net"

SenderName : String
(v3.0)
收信人姓名
JMail.SenderName = "Bat man"

ServerAddress : String
(v3.0)
SERVER的地址。可以有很多的SERVER地址,後可跟端口號
JMail.ServerAddress = "mail.mydom.net; mail2.mydom.net:2500"

Silent : Boolean
(v3.0)
設置成TRUE後JMAIL將檢查所有的郵件在 JMail.execute() 執行後
返回真或假根據信件發送的成功與否depending on the success of the operation

JMail.silent = true

SimpleLayout : Boolean
(v3.0)
設置成TRUE減少JMAIL產品頭數量
JMail.SimpleLayout = true

Subject : String
(v3.0)
郵件的標題。
JMail.Subject = "Dimac rocks big time!"


UsePipelining : Boolean
(v3.0)
管道的支持。
JMail.Pipelining = false


JMAIL的方法
AddAttachment( FileName, [ContentType] )
(v3.0)
加入一個附件
JMail.AddAttachment( "c:\\autoexec.bat" );

AddHeader( XHeader, Value )
(v3.0)
加入一個頭信息
JMail.AddHeader( "Originating-IP","193.15.14.623" );

AddNativeHeader( Header, Value )
(v3.0)
加入一個頭信息
JMail.AddNativeHeader( "MTA-Settings", "route" );

AddRecipient( Email )
(v3.0)
加入一個收件者
JMail.AddRecipient( "info@dimac.net" );

AddRecipientBCC( Email )
(v3.0)
屏蔽某個接受者。不給其發送郵件
JMail.AddRecipientBCC( "someone@somedomain.net" );

AddRecipientCC( Email )
(v3.0)
抄寫一份給另一接受者
JMail.AddRecipientCC( "someone@somedomain.net" );

AddRecipientEx( Email, Name )
(v3.0)
加入和郵件相對應的名稱
JMail.AddRecipientEx( "info@dimac.net", "Dimac INFO" );

AppendBodyFromFile( FileName )
(v3.0)
將文件的內容發送出去
JMail.AppendBodyFromFile( "c:\\mytext.txt" );

AppendText( Text )
(v3.0)
添加附件
JMail.AppendText( "Text appended to message Body" );

ClearAttachments()
(v3.0)
清除附件列表
JMail.ClearAttachments();

ClearCustomHeaders()
(v3.0)
清空所有的用戶頭信息
JMail.ClearCustomHeaders();

ClearRecipients()
(v3.0)
清空收件箱
JMail.ClearRecipients();


Close()
(v3.0)
強行制止郵件的發送
JMail.Close();

Execute() : Boolean
(v3.0)
執行郵件發送到SERVER
JMail.Execute();

ExtractEmailAddressesFromURL( bstrURL, [bstrAuth] )
(v3.0)
從URL或下載加入郵件地址
JMail.ExtractEmailAddressesFromURL( "http://duplo.org/generateEmailList.asp" );

LogCustomMessage( Message )
(v3.0)
登陸用戶信息到JMAIL的LOG,這個功能只有將LOGING設置為TRUE時可以用
JMail.LogCustomMessage( "Hello world" );

2007年10月23日 星期二

[轉載]提高IIS網站服務器效率八法

2004-07-19 來源:天極硬件頻道

  以下是提高IIS 5.0網站服務器的執行效率的八種方法:

  1. 啟用HTTP的持續作用可以改善15~20%的執行效率。
  2. 不啟用記錄可以改善5~8%的執行效率。
  3. 使用 [獨立] 的處理程序會損失20%的執行效率。
  4. 增加快取記憶體的保存文檔數量,可提高ActiveServer Pages之效能。
  5. 勿使用CGI程式
  6. 增加IIS 5.0電腦CPU數量。
  7. 勿啟用ASP偵錯功能。
  8. 靜態網頁採用HTTP 壓縮,大約可以減少20%的傳輸量。


  簡單介紹如下

  1、啟用HTTP的持續作用

  啟用HTTP的持續作用(Keep-Alive)時,IIS與瀏覽器的連線不會斷線,可以改善執行效率,直到瀏覽器關閉時連線才會斷線。因為維持「Keep-Alive」狀態時,於每次用戶端請求時都不須重新建立一個新的連接,所以將改善服務器的效率。
  此功能為HTTP 1.1預設的功能,HTTP 1.0加上Keep-Alive header也可以提供HTTP的持續作用功能。


  2、啟用HTTP的持續作用可以改善15~20%的執行效率。

  如何啟用HTTP的持續作用呢?步驟如下:
  在 [Internet服務管理員] 中,選取整個IIS電腦、或Web站台,於 [內容] 之 [主目錄] 頁,勾選 [HTTP的持續作用] 選項。

  3、不啟用記錄

  不啟用記錄可以改善5~8%的執行效率。
  如何設定不啟用記錄呢?步驟如下:
  在 [Internet服務管理員] 中,選取整個IIS電腦、或Web站台,於 [內容] 之 [主目錄] 頁,不勾選 [啟用記錄] 選項。
  設定非獨立的處理程序
  使用 [獨立] 的處理程序會損失20%的執行效率,此處所謂「獨立」係指將 [主目錄]、[虛擬目錄] 頁之應用程式保護選項設定為 [高(獨立的)] 時。因此 [應用程式保護] 設定為 [低 (IIS處理程序)]時執行效率較高,設定畫面如下:
  如何設定非「獨立」的處理程序呢?步驟如下:
  在 [Internet服務管理員] 中,選取整個IIS電腦、Web站台、或應用程式的起始目錄。於 [內容] 之 [主目錄]、[虛擬目錄]頁,設定應用程式保護選項為 [低 (IIS處理程序)]。

  4、調整快取(Cache)記憶體

  IIS 5.0將靜態的網頁資料暫存於快取(Cache)記憶體當中;IIS 4.0則將靜態的網頁資料暫存於檔案當中。調整快取(Cache)記憶體的保存檔案數量可以改善執行效率。
  ASP指令文檔執行過後,會在暫存於快取(Cache)記憶體中以提高執行效能。增加快取記憶體的保存文檔數量,可提高Active Server Pages之效能。
  可以設定所有在整個IIS電腦、「獨立」Web站台、或「獨立」應用程式上執行之應用程式的快取記憶體檔案數量。

  如何設定快取(Cache)功能呢?步驟如下:
  在 [Internet服務管理員] 中,選取整個IIS電腦、「獨立」Web站台、或「獨立」應用程式的起始目錄。於 [內容] 之 [主目錄]、[虛擬目錄] 頁,按下 [設定] 按鈕時,即可由[處理程序選項] 頁設定 [指令檔快取記憶體] 。
  如何設定快取(Cache)記憶體檔案數量呢?步驟如下:
  在 [Internet服務管理員] 中,選取整個IIS電腦、或Web站台的起始目錄。於 [內容] 之 [伺服器擴充程式] 頁,按下 [設定] 按鈕。
  即可設定快取(Cache)記憶體檔案數量。

  5、勿使用CGI程式

  使用CGI程式時,因為處理程序(Process)須不斷地產生與摧毀,造成執行效率不佳。
  一般而言,執行效率比較如下:

  靜態網頁(Static):100

  ISAPI:50

  ASP:10

  CGI:1

  換句話說,ASP比CGI可能快10倍,因此勿使用CGI程式可以改善IIS的執行效率。

  以彈性(Flexibility)而言:ASP > CGI > ISAPI > 靜態網頁(Static)。

  以安全(Security)而言:ASP(獨立) = ISAPI(獨立)= CGI > ASP(非獨立) = ISAPI(非獨立)= 靜態網頁(Static)。

  6、增加IIS 5.0電腦CPU數量

   根據微軟的測試報告,增加IIS4.0電腦CPU數量,執行效率並不會改善多少;但是增加IIS 5.0電腦CPU數量,執行效率會幾乎成正比地提供,換句話說,兩顆CPU的IIS 5.0電腦執行效率幾乎是一顆CPU電腦的兩倍,四顆CPU的IIS 5.0電腦執行效率幾乎是一顆CPU電腦的四倍。
  IIS 5.0將靜態的網頁資料暫存於快取(Cache)記憶體當中;IIS 4.0則將靜態的網頁資料暫存於檔案當中。調整快取(Cache)記憶體的保存檔案數量可以改善執行效率。

  7、勿啟用ASP偵錯功能

  勿啟用ASP偵錯功能可以改善執行效率。
  如何勿啟用ASP偵錯功能呢?步驟如下:
   於 [Internet服務管理員] 中,選取Web站台、或應用程式的起始目錄,按右鍵選擇[內容],按 [主目錄]、[虛擬目錄] 或 [目錄] 頁,按下[設定] 按鈕,選擇 [應用程式偵錯] 頁,不勾選 [啟用ASP伺服器端指令偵錯]、[啟用ASP用戶端指令偵錯] 選項。

  8、靜態網頁採用HTTP 壓縮

  靜態網頁採用HTTP 壓縮,大約可以減少20%的傳輸量。
  HTTP壓縮功能啟用或關閉,系針對整台IIS服務器來設定。
  用戶端使用IE 5.0瀏覽器連線到已經啟用HTTP壓縮IIS 5.0之Web服務器,才有HTTP壓縮功能。
  如何啟用HTTP壓縮功能呢?步驟如下:
   若要啟用HTTP壓縮功能,方法為在 [Internet服務管理員] 中,選取電腦之 [內容],於 [主要內容] 之下選取[WWW服務]。然後按一下 [編輯] 按鈕,於 [服務] 頁上,選取 [壓縮靜態檔案] 可以壓縮靜態檔案,不選取 [壓縮應用程式檔案] 。

  動態產生的內容檔案(壓縮應用程式檔案)也可以壓縮,但是須耗費額外CPU處理時間,若% Processor Time已經百分之八十或更多時,建議不要壓縮。
  其次 我還要說一下,就是除掉一些不必要的服務

2007年10月18日 星期四

Gforge安裝指南(RH Linux 4.4 32bits)

前言:

安裝gforge需要安裝以下套件,包括:

Openssl

Apache

Postgresql

Php

Bdb

Svn

我的Server版本是Redhat Enterprise 4.4 32bits 不安裝DefaultWeb Server, Database Server等等

我準備了這些tar包:

Openssl-0.9.8e.tar.gz

httpd-2.2.6.tar.gz

postgresql-8.2.5.tar.gz

php-5.2.4.tar.gz

db-4.4.20.tar.gz

subversion-1.2.1.tar.bz2

gforge-4.5.16.tar.bz2

都能從網路上找到並下載。


我依照以下順序安裝以上這些包。

. openssl

#tar -zvxf openssl-0.9.8e.tar.gz

#cd openssl-0.9.8e

# ./config --prefix=/usr/local/openssl

#make

#make install

. apache

# tar -zxf httpd-2.2.6.tar.gz

# cd httpd-2.2.6

# ./configure --prefix=/usr/local/apache --enable=-dav--enable-so --enable-ssl --with-ssl=/usr/local/openssl --enable-rewrite --enable-maintainer-mode

#make

#make install

: dav, so maintainer-mode都是必需的。

. postgresql

#tar -zxvf postgresql-8.2.5.tar.gz

# cd postgresql-8.2.5

# ./configure --prefix=/usr/local/pgsql --with-openssl

#gmake

#gmake install

#adduser postgres

#passwd postgres

#mkdir /usr/local/pgsql/data

#chown postgres /usr/local/pgsql/data

#/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data (初始數據庫)

# /usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data >logfile 2>&1 & (會在後台運行並返回一pid)

. php

#tar zxf php-5.2.4.tar.gz

#cd php-5.2.4

# ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-pgsql=/usr/local/pgsql --enable-mbstring --enable-ftp

#make

#make install

#cp php.ini-dist /usr/local/php/lib/php.ini

#vi php.ini

修改

register_globals=On

magic_quotes_gpc=On

file_uploads=On

include_path=".:/var/www/gforge:/var/www/gforge/www:/var/www/gforge/www/include:/etc/gforge:/var/www/gforge/www/admin/:/var/www/gforge/plugins/scmcvs/etc:/var/www/gforge/plugins/scmsvn/etc"#vi /usr/local/apache/conf/httpd.conf

寫入

AddType application/x-httpd-php .php

AddType application/x-httpd-php-source .phps

尋找DirectoryIndex

加入 index.htm index.php

reboot apache

五. BDB

# tar zxf db-4.4.20.tar.gz

# cd db-4.4.20/build_unix/

#../dist/configure --prefix=/usr/local/bdb (注意 不能在dist/裡面config)

#make

#make install

六. SVN

#tar xvfj subversion-1.2.1.tar.bz2

#cd subversion-1.2.1

# ./configure --with-berkeley-db=/usr/local/bdb --with-apxs=/usr/local/apache/bin/apxs --with-ssl --with-libs=/usr/local/openssl --enable-maintainer-mode

#make

#make install

#svnadmin –version (檢查svnversion)

#svnserve –d (啟動svn service)

(如果path沒設好,請到目標目錄裡嘗試啟動, prefix不設沒關係)

七. gforge

#tar xvfj gforge-4.5.16.tar.bz2

#mv gforge-4.5.16 /var/www/gforge

#mkdir /etc/gforge

# cp /var/www/gforge/etc/local.inc.example /etc/gforge/local.inc

#vi /etc/gforge/local.inc

修改

$sys_dbhost="localhost"

$sys_dbname="gforge"

$sys_dbuser="postgres"

$sys_dbpasswd="你剛給予的postgresql密碼"

$sys_urlroot='/var/www/gforge/www/';

$sys_themeroot='/var/www/gforge/www/themes/';

$sys_default_domain = 'gforge.company.com';

$sys_forum_return_domain = "gforge.company.com";

$sys_download_host = 'download.gforge.company.com';

$sys_shell_host = 'shell.gforge.company.com';

$sys_users_host = 'users.gforge.company.com';

$sys_scm_host = 'cvs.gforge.company.com';

(gforge.company.com轉換成你自己的 domain)

$svndir_prefix='/usr/local/bin';

$sys_plugins_path='/var/www/gforge/plugins/';

以上是必須注意要改的變量,還有將所有/var/lib/gforgepath改成/var/www/gforge (因為我們安裝在/var/www/gforge)

八. 準備gforge用的database

# vi /usr/local/pgsql/data/pg_hba.conf

加入

host gforge gforge 127.0.0.1 255.255.255.255 md5


# vi /usr/local/pgsql/data/postgresql.conf

修改或加入

tcpip_socket = true


#su - postgres

#/usr/local/pgsql/bin/psql template1

template1=# CREATE USER gforge NOCREATEUSER NOCREATEDB PASSWORD 'gfpwd';

CREATE ROLE

template1=# CREATE DATABASE gforge OWNER gforge ENCODING 'UNICODE';

CREATE DATABASE

template1=# \q

#/usr/local/pgsql/bin/createlang plpgsql gforge

#cd /var/www/gforge/www/db

#/usr/local/pgsql/bin/psql gforge

gforge=# \i gforge.sql

gforge=# \q

九. 設定ApacheVirtual Server連到/var/www/gforge/www

(Server Name一定要與gforgelocal.incdomain一致才能運作)

設置Virtual Server範例(假設我是要以8080 Port連到gforge):


Listen 8080

DocumentRoot "/var/www/gforge/www"

ForceType application/x-httpd-php

ForceType application/x-httpd-php

Options FollowSymLinks

AllowOverride None

Order allow,deny

allow from all

ServerName yourdns.com

如果你是使用Webmin來設定virtual host,你只要修改httpd.conf文件,並照著以上範例增減就可以了。

現在嘗試連到你的gforge伺服器。

MSN裡的History改變字型和字體大小

在存放你MSN History的Folder裡面,有一個MessageLog.xsl,主要是負責設定History的顯示版面。
使用Notepad打開MessageLog.xsl,在裡面找一行有的tab.
其屬性有個font-size就是顯示History字體大小的屬性。
修改裡頭的數值就會令History的字體變大變小。
Google