在資源管理器中,刪除乙個檔案,更改乙個資料夾名稱,都能及時重新整理。這是怎麼做到的呢?答案是使用了檔案改變通知。
先看乙個結構
typedef struct tagshchangenotifyentry shchangenotifyentry;
要接收檔案改變的訊息,我們要使用乙個視窗hwnd,在視窗建立的wm_create訊息處註冊:
shchangenotifyentry schnenotifyentry;
schnenotifyentry.dweventmask = shcne_allevents;//監視所有事件
schnenotifyentry.pszwatchdir = null;//要監視的目錄名,null表示所有
schnenotifyentry.frecursive = true;//監視目錄時,是否遞迴
shchangenotifyregister(hwnd, &schnenotifyentry);
在視窗的過程函式裡,我們響應wm_filechangeinfo訊息
case wm_filechangeinfo:
lpfci = &(lpfcn->fci);
if (null == lpfci)
else
}shchangenotifyfree(lpfcn);
}break;
shcneevent函式實現如下:
bool shcneevent(filechangeinfo *lpfci)
return true;
}根據事件,就可以知道是哪個檔案或目錄發生了改變。
最後,在hwnd銷毀處,要登出:
Windows Mobile中GPRS連線網路
windows mobile程式中如果要使用http或socket連線伺服器,需要先連線網路。可以使用connmgrestablishconnectionsync函式來連線。如果知道乙個接入點的名稱,則可以通過connmgrenumdestinations得到相應接入點的guiddestnet。然後...
Windows Mobile中GPRS連線網路
windows mobile程式中如果要使用http或socket連線伺服器,需要先連線網路。可以使用connmgrestablishconnectionsync函式來連線。如果知道乙個接入點的名稱,則可以通過connmgrenumdestinations得到相應接入點的guiddestnet。然後...
Windows Mobile中的檔案改變通知
在資源管理器中,刪除乙個檔案,更改乙個資料夾名稱,都能及時重新整理。這是怎麼做到的呢?答案是使用了檔案改變通知。先看乙個結構 typedef struct tagshchangenotifyentry shchangenotifyentry 要接收檔案改變的訊息,我們要使用乙個視窗hwnd,在視窗建...