C 多窗體使用乙個SOCKET

2025-03-22 17:35:10 字數 2575 閱讀 9950

1樓:匿名使用者

這要看你的ui怎麼實現,如神則虛果採用c來寫,可定義乙個全域性的socket指標或引用:socket* g_socket = null; /登陸框傳送資訊到服務端if ( connect(socket, ,socket_error ) g_socket = socket; /開啟大廳獲取資訊socket socket;if( g_socket !=null)

如果採用c++來寫,遊燃 可以直接給建構函式傳參:croomdlg *roomdlg = new croomdlg ( socket );

roomdlg ->create(idd_room, m_hwnd);

roomdlg ->showwindow(sw_show);然後你就可以在croomdlg 裡使用外部傳進來的socket了盯盯。

2樓:匿名使用者

宣告的socket物件,棚巧並將它的指和和姿針傳遞到主視窗,從而使別喚絕的窗體共用這個socket然後設定乙個檔案級的變數,通過乙個地方讀取資料,判斷後在轉到相應的模組中去就行了。

3樓:匿名使用者

試亂搏廳試 寫個函式 到到時譁隱候 socket = 物件。函式 通銀御信都是socket的完成的。

4樓:匿名使用者

修改第六個引數即可。

如果幫助到您,請記得為滿意答宴坦案哈慧棚,謝謝!晌碧桐祝您生活愉快!

我寫了乙個windows窗體應用程式(c++),現在想實現在後臺用socket接受訊息,並在介面做響應修改的功能

5樓:閒來無事

首先socket肯定是乙個單獨的類,和介面沒有任何關係。

socket類提供public傳送介面供物件使用。

在socket內部每個socket接收操作起乙個執行緒,進行阻塞接收(阻塞式socket。其他型別socket比如完成埠按照對應機制實現)。

當每個執行緒收到資料後,通知介面類來處理。至於通知方式,最簡單的是**。複雜點的用訊息(不一定是windows訊息)。

**被呼叫後進行資料更新。

vs c++窗體程式怎麼用socket實現int型別資料的傳送和接收

6樓:網友

可以吧int行轉成位元組傳送,對應再把位元組轉成int型的;

如 客戶端傳送資料。

int a = 3; //int型四位元組。

char ch[4];

根據位元組操作把a的記憶體全部放到ch裡面,如果**位元組不在開始可採用&ch[i]的形式。

memcpy(ch, &a, 4);

傳送ch伺服器端接受資料。

char ch[4];

接受資料發到ch;

int a = 0;

memcpy(&a, ch, 4)//把ch記憶體複製到a的記憶體,這就轉換完成了。

id就是qq,不明白可以加了詳聊。

用c++寫乙個dos視窗的socket程式,需要包含哪些標頭檔案

7樓:小呆瓜

或者呼叫函式的時候,在msdn裡面可以看到具體需要什麼標頭檔案。

c或者c++封裝乙個socket類,然後可以同時在windows和linux下使用,能行麼?

8樓:不會悲傷的貓

可以 linux支援gcc可以編譯c++不過 不要呼叫 win api

9樓:匿名使用者

winsocket程式設計就不行,換言之,如果你用了各種提供方法,比如ipheader結構體,還有一些封裝好的傳輸函式等等,如果你寫的socket類中完全是純c或c++的話,應該可以,純c或c++「的意思是所有的結構體到傳輸校驗都是你自己實現的,這樣才行。

c++ 多執行緒socket程式設計可以多個執行緒同時accept資料嗎

10樓:空雪夢見

你別多個執行緒在同乙個socket上呼叫accept就成。

多個執行緒在同乙個socket上呼叫accept我真不知道它會有什麼樣的行為。

常見的一種做法是在乙個socket上呼叫accept,接受連線以後丟給某個執行緒去完成接下來的事情。

11樓:林奈克斯

監聽連線都用乙個執行緒就行了,多執行緒監聽是不明智的,監聽到之後把建立連線的套接字傳送給其他執行緒通訊就行。。。

12樓:亞馬遜選品管家

就乙個偵聽就可以了,偵聽後,接著偵聽,然後用執行緒去處理客戶端的資料。

們在使用c/c++編寫網路程式的時候,都會新建乙個socket,

13樓:網友

網路中的程序是通過socket來通訊的。

socket起源於unix,而unix/linux基本哲學之一就是「一切皆檔案」,都可以用「開啟open –>讀寫write/read –>關閉close」模式來操作。

我的理解就是socket就是該模式的乙個實現,socket即是一種特殊的檔案,一些socket函式就是對其進行的操作(讀/寫io、開啟、關閉)

C怎麼在同專案裡窗體啊,C 怎麼在同一個專案裡新建窗體啊

首先確保你的專案解決方案裡面有至少兩個form窗體,比如說 form1和form2 如果你的button 在form1裡面,那麼,你只需要在button的click事件裡面寫入如下 from1 form new form1 form.show 就可以達到你需要的效果 如果你只是需要新建一個窗體 解決...

c 簡單問題,一個 c 簡單問題

a.find eel 1 not 這是?表示式。首先看a.find eel 如果返回值為 1,那麼前面的a.find eel 1就為0 這個應該能理解吧 也就是沒有找到 eel 子串,按照?表示式的返回值規則,前面的計算結果取值為0時返回 冒號 後面的值,前面的計算結果為真 1 的話就返回 問號 和...

求助C語言問題,求助一個c語言問題

沒有看到右側的數學式子.不過從答案上可以推測出,原式為 要表達指數,需要用pow函式,形式為pow x,n 所以正確的是a.求助一個c語言問題?舉例說,char s 100 才可以使用 scanf s s 進行輸入,如果是int a 100 就不可以用 scanf d a 進行輸入。c語言問題,求助...