前面寫了兩個小程式,沒有說明原理(邏輯關係):這裡一併說明。
1.首先我們得理解訊息機制,也就是應用程式在和作業系統互動的時候(為什麼是作業系統而不是使用者,其實是乙個意思,因為使用者的資料需要先經過作業系統),應用程式所處的狀態,一共有五種,1.阻塞,2.不阻塞,3.select即阻塞於select是介於1和2之間的實現,4.訊號或者說訊息,5.類訊號機制。訊息機制原理和中斷系統原理一樣,系統不需要輪詢應用程式,使用者需要註冊**函式(類似於中斷處理函式),然後應用程式該幹嘛就幹嘛。當應用程式宣告的事件(中斷產生)產生,作業系統會自動呼叫**函式。
2.控制代碼,windows系統中用來唯一標識乙個物件,或者乙個程式的多個例項的整型數值。就像linux裡面用pid標識一樣。用於對物件的操作。
時鐘實現,是使用者設定定時器事件和定時器**函式,**函式裡處理系統時間即可。
**如下:
view code
1 #include "執行結果:stdafx.h
"2 #include 3 #include 4 #include "
resource.h
"5 #include "
maindlg.h"6
78bool winapi main_proc(hwnd hwnd, uint umsg, wparam wparam, lparam lparam)916
1718
return
false;19}
2021
void callback mytimerproc (
22hwnd hwnd, uint message, uint itimerid, dword dwtime)
2337
3839
40bool main_oninitdialog(hwnd hwnd, hwnd hwndfocus, lparam lparam)
4145
46void main_oncommand(hwnd hwnd, int
id, hwnd hwndctl, uint codenotify)
4754
break;55
default:56
break;57
}58}59
60void
main_onclose(hwnd hwnd)
61
vc自製時鐘的實現
程式設計中有很多要實現程式執行計時,和程式定時的實現,我現在給出我一般實現這種功能的方法 1 在dialog對話方塊裡加入乙個唯讀的編輯控制項並繫結cstring型的public常量 m strtime 2要計時的對話方塊加入wm timer訊息,回自動生成個ontimer函式,預設就可以了 3具體...
乙個簡單的時鐘程式《VC實現》
具體過程 1 首先,我 們建立乙個基於 對話方塊的程式2 在 對話方塊裡建立三個靜 態文字其id分 別為idc hour idc minute idc second 3 用mfc 為三個id 新增變數 變數型別 為cstring m hours m minutes m seconds 4 然後對映訊...
VC下socket網路程式設計實現
sockets 套接字 程式設計有三種,流式套接字 sock stream 資料報套接字 sock dgram 原始套接字 sock raw 基於tcp的socket程式設計是採用的流式套接字。在這個程式中,將兩個工程新增到乙個工作區。要鏈結乙個ws2 32.lib的庫檔案。伺服器端程式設計的步驟 ...