2007年5月10日 星期四

快速加入MSN連絡人們

1. 開啟「記事本」
2. 把想要加入成為連絡人的msn填在 中,完整的XML如下 :
(因為無法Post文字,所以只好用圖片)




3. 將檔案存為Contact(msn).ctt就可以了


4. 匯入Contact(msn).ctt






暴走的svchost.exe (CPU使用率100%)

reference from Wake up and smell the Coffee

最近電腦常莫名地在奔跑,不曉得它在忙什麼= =
開了taskmanager來看,發現是svchost.exe吃了很大的資源
我想一定有什麼服務讓我的電腦醬哇哇叫~~~
基本上,工程師都很討厭電腦失控....所以我只好找方法來修理它

註: 如果你懶得用滑鼠去點「開始」–>「執行」,學我直接在鍵盤上按視窗鍵+r就會跳出來了
這個快捷鍵我在vista上也適用

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

二、重新註冊 Windwos Update 的元件
這個步驟可以下列code直接貼到記事本,存成regsrv.bat後直接double-click就行啦!!
@echo off
echo
REGSVR32 WUAPI.DLL
REGSVR32 WUAUENG.DLL
REGSVR32 WUAUENG1.DLL
REGSVR32 ATL.DLL
REGSVR32 WUCLTUI.DLL
REGSVR32 WUPS.DLL
REGSVR32 WUPS2.DLL
REGSVR32 WUWEB.DLL
echo echo. & exit


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

2007年5月8日 星期二

SharePoint 2007 -- SPListItemCollection.GetDataTable() ??????

reference from here !!

直接自己建method吧
最近怎麼常碰到這種自己必須硬來,hard coding的慘劇啊~~~~~~~~ 唉

DataTable CreateDataTableFromListItemCollection(SPListItemCollection itemCollection)
{
DataTable tbl = new DataTable();
if (itemCollection.Count > 0)
tbl.TableName = itemCollection[0].ParentList.Title;

if (itemCollection.Count > 0)
{
// Take the first item and generate all columns
//tbl.TableName = itemCollection[0].Title;
foreach (SPField curField in itemCollection[0].Fields)
{

DataColumn col = new DataColumn(curField.InternalName);
tbl.Columns.Add(col);
}
foreach (SPListItem item in itemCollection)
{
DataRow row = tbl.NewRow();
foreach (SPField field in item.Fields)
{
try
{
row[field.InternalName] = item[field.InternalName];
}
catch { continue; } // Gah...
}
tbl.Rows.Add(row);
}
}
return tbl;
}