1、不是等于VM_ 應(yīng)該是WM_。WM指的是WindowMessage 即windows消息。以WM_開頭的是預(yù)定義的windows消息。windows是基于消息驅(qū)動(dòng)的操作系統(tǒng),當(dāng)程序接收到系統(tǒng)發(fā)送的消息后會(huì)做出相應(yīng)的響應(yīng)。
創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比衡山網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式衡山網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋衡山地區(qū)。費(fèi)用合理售后完善,十載實(shí)體公司更值得信賴。
2、第一個(gè),是指定的窗口的句柄,這個(gè)窗口是廣義上的,也就是說包括各種控件,對(duì)話框。
3、SendMessage 函數(shù)功能 該函數(shù)將指定的消息發(fā)送到一個(gè)或多個(gè)窗口。此函數(shù)為指定的窗口調(diào)用窗口程序,直到窗口程序處理完消息再返回。而和函數(shù)PostMessage不同,PostMessage是將一個(gè)消息寄送到一個(gè)線程的消息隊(duì)列后就立即返回。
4、SendMessage(HWND hWnd,UINT msg,WPARAM wParam,LPARAM lParam)將消息發(fā)送給這個(gè)句柄指示的窗口資源,用這個(gè)窗口資源的消息響應(yīng)函數(shù)處理。
1、第一個(gè)問題,send函數(shù)中第4個(gè)參數(shù)的含義,send函數(shù)原型 int PASCAL FAR send( SOCKET s, const char FAR* buf, int len, int flags);s:一個(gè)用于標(biāo)識(shí)已連接套接口的描述字。buf:包含待發(fā)送數(shù)據(jù)的緩沖區(qū)。
2、發(fā)送者: 把結(jié)構(gòu)體對(duì)象 通過 序列化 變成二進(jìn)制緩存,然后 傳輸這個(gè)緩存。
3、從你代碼上看貌似是發(fā)送多行文本。我看了下有幾個(gè)問題,char len = sendFile.tellg();怎么能用char呢,char只能到128,看看你的數(shù)組大小4096,是128的n倍。
4、const char*buf,//存放發(fā)送數(shù)據(jù)的緩沖區(qū)(這個(gè)什么意思?)這就是要發(fā)送的數(shù)據(jù) 定義一個(gè)指向字符數(shù)組的指針buf,將要發(fā)送的內(nèi)容存到這個(gè)字符數(shù)組,將這個(gè)數(shù)組的地址,也就是buf作為參數(shù)傳遞。
5、是要保持服務(wù)器與客戶端的連接。而不能這樣立即關(guān)閉,如果設(shè)置不對(duì),立即關(guān)閉,緩沖區(qū)的數(shù)據(jù)是會(huì)丟失的。那客戶端也就不會(huì)再收到數(shù)據(jù)了。
1、void a(){……} void main(){……a();……} 則a()為被調(diào)用函數(shù),main()為主函數(shù) 被調(diào)用函數(shù)一般放在主函數(shù)前,若被調(diào)用函數(shù)放在主函數(shù)后,需函數(shù)聲明。
2、函數(shù)原型聲明只是一個(gè)好習(xí)慣,C11標(biāo)準(zhǔn)并沒有強(qiáng)制要求必須給出原型聲明。而且聲明函數(shù)的同時(shí)定義函數(shù)也是允許的。
3、接著是函數(shù)聲明,大家都知道,C語言是有一個(gè)主函數(shù)main()和0或n個(gè)普通函數(shù)組成的。由于當(dāng)代碼越長,用到的函數(shù)就越多,為了減少函數(shù)的混淆,所以要有個(gè)函數(shù)名,就像老師點(diǎn)名一樣,聲明一個(gè)函數(shù),就如點(diǎn)一個(gè)學(xué)生的名字。