c語言發消息
1. c語言Socket伺服器怎麼給客戶端發消息
你的文件中的問題
// 會阻塞進程,直到有客戶端連接上來為止
// 既然是直到有客戶端連接上,那麼就要弄明白哪個是與客戶端連接的套接字
// sockClient就是與客戶端連接的套接字
sockClient = accept(sockServer, (SOCKADDR*)&addrClient, &len);
//接收並列印客戶端數據
recv(sockClient, recvBuf, 100, 0);
printf("%s\n", recvBuf);
// 所以此處,應該把sockServer改為sockClient
send(/*sockServer*/sockClient, sendBuf, 100, 0);
PS:伺服器客戶端通信,是要保持伺服器與客戶端的連接。
而不能這樣立即關閉,如果設置不對,立即關閉,緩沖區的數據是會丟失的。那客戶端也就不會再收到數據了。
你可以加Sleep(10000);來測是通信過程
//關閉socket
closesocket(sockClient);
2. C語言socket編程要怎麼實現伺服器可以發消息給客戶端
先要理解socket是什麼?
簡單的說socket是一個全雙工的通信通道,
即使用TCP或者UDP通信時均可以在發送消息的同時接受消息,
它不區分是否是伺服器。
根據這個概念你的問題就很好回答。
》當客戶端與伺服器連接後。有什麼方法使伺服器可以隨時隨地發消息給客戶端?
》我現在只能。客戶端發個消息給伺服器。伺服器才能發個消息給客戶端。也就是說客戶端不發消息。伺服器就沒法發消息給客戶端。
》求大牛給個思路。當連接後。客戶端與伺服器雙方可以隨時隨地通信!
使用多線程,一個維持接受邏輯,一個維持送信邏輯,即可完成同時接受及發送。
客戶端及伺服器端均做上述設置。
而你的做法是在一個線程中執行接受與送信,因此只能按照順序邏輯完成接收與送信。
關鍵點是多線程。
3. C語言問題,字元串和消息發送
L表示寬字元,用兩個位元組表示一個字元,和char*不兼容,所以只要你用char path[]怎麼表示都是不合適的,應該用wchar_t path [] = L"./img/bk.jpg";
還是系統的學習一下消息吧!粘貼不是這么發的,粘貼屬於命令類型,不是你這種消息。但是要教會你發命令由一堆的事情。正確的學法時買本《VC技術內幕》學一年左右(我可能學了超過1年還只是入門)
4. c語言寫的socket程序客戶端,給服務端發送消息。加上時間戳,就是在消息前面加上時間。
time_tt;
structtm*ti;
charbuffer[1048],input[1024];
time(&t);//獲取時間戳
ti=localtime(&t);//轉成詳細時間信息
//格式化時間字元串
sprintf(buffer,"%04d/%02d/%02d%02d:%02d:%02d",
ti->tm_year+1900,
ti->tm_mon+1,
ti->tm_mday,
ti->tm_hour,
ti->tm_min,
ti->tm_sec);
fgets(input,1024,stdin);
strcat(buffer,input);//連接兩個字元串
printf("%s",buffer);
send(sockfd,buffer,strlen(buffer),0);
//望採納
5. 怎麼用C語言向指定窗口發送消息
如果是簡單情況, 需要輸入的數據就在一個文件里放著。 比如 test.dat , 而要接收數據的程序文件叫 run.exe
可以這樣 運行這個程序: run.exe < test.dat
這樣文件內容就作為run.exe運行時的輸入了。
如果是復雜點的情況,需要輸入的數據是隨時算的, 可以寫個「輸出所需數據」的程序, 就是做數據然後 printf出來就可以(別忘了回車) 。 這個程序比如叫 data.exe
可以這樣運行兩個程序: data.exe | run.exe
這樣 data.exe輸出的內容就作為run.exe運行時的輸入了
6. c語言消息轟炸為什麼發不出消息
虛擬按鍵失效。
1、首先在一個按鍵按下的過程執行完畢後一定要有抬起的動作。
2、函數執行比較快,如果要使用虛擬按鍵,最好是在中間加入Sleep函數來使得程序等待一段時間,否則虛擬按鍵容易因為代碼執行速度過快而失效導致發不出消息。
7. C語言Socket伺服器怎麼給客戶端發消息
socket
伺服器給指定的客戶端發消息該怎麼處理(tcp)(c語言)
多個客戶端之間進行通訊,通過伺服器轉發的形式,現在客戶端1請求向客戶端2發送消息,先把消息發送到伺服器,伺服器怎麼才能把消息轉發到客戶端2而不是轉發給客戶端3或者他自己。
8. c語言windows程序,如何給其他程序傳遞消息。
大概思路是
你要獲取這個窗口的句柄,因為有了窗口句柄,你想干什麼就可以干什麼了。比如枚舉窗口下的子窗口句柄,然後發送數據就行了。
可是要獲取句柄,是不是應該要找到對應的進程?QQ在內核方面下了功夫,把很多關鍵函數hook了。所以你需要利用ARK內核級別的軟體工具查看到底哪些函數被hook了,然後通過手動或者編程實現還原。這樣你才有機會獲取QQ的進程。
就上面說的,實現起來就很難了。
說白了就是過QQ的驅動保護,這些技術可以參考《rootkit-windows內核的安全防護》等書籍。不過前提是基礎要好,不然看不懂。