freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

udp局域網(wǎng)qq聊天程序設(shè)計(jì)說明書-預(yù)覽頁

2025-06-06 22:38 上一頁面

下一頁面
 

【正文】 1)新建一個Windows應(yīng)用程序, (2)在窗體加載時,首先要調(diào)用登陸窗體,當(dāng)?shù)顷懘绑w驗(yàn)證成功后,發(fā)送消息給服務(wù)器端,返回所有注冊的用戶信息。 case 1://服務(wù)器告訴自己已經(jīng)登錄,登錄過程 SuccessLogin(msg)。 case 3://服務(wù)器告訴用戶有新的聯(lián)系人登錄 NewUserLogin(new ClassSerializers().DeSerializeBinary((new ( ))) as ClassUserInfo )。 case 5://收到用戶聯(lián)系人發(fā)送來的對話消息 UserChatArrival(msg,Ip,Port)。 case 8://對方要求UDP打洞 UDPNatTranslators(msg,Ip,Port)。 case 11://收到聯(lián)系人發(fā)送來的gif圖片流 UserGifArrival(msg,Ip,Port)。 case 13://收到語音對話請求 //(語音對話請求+ () +:+ ())。 UserBeginAV(msg,Ip,Port)。 (10)當(dāng)在用戶頭像上雙擊某一個在線用戶的圖標(biāo)時,即可打開該用戶的聊天窗口。不但具有具有文本聊天的功能,還具有點(diǎn)對點(diǎn)的語音和文件傳輸?shù)裙δ?,此外,還可以進(jìn)行字體的設(shè)置,表情的發(fā)送以及圖片的發(fā)送等功能。//刪除文件傳輸Tab控件 } private void fSend_fileSendOutTime(object sender, e) { // AppendSystemRtf(文件發(fā)送超時!)。對方接收到后,再將消息反序列化成對象,再在接收框上面顯示出來就可以了。也是要以文件流的形式進(jìn)行傳輸。該窗體主要用到了PictureBox、RichTextBox、UDPSocket、Timer、toolStrip、Button等控件。RichTextBox控件主要是用于顯示接收的和發(fā)送的文本信息。當(dāng)信息小于1024字節(jié)時,可以直接進(jìn)行發(fā)送。 }(6)語音的實(shí)現(xiàn),主要有以下的幾個步驟:① 語音采集采集的作用就是從麥克風(fēng)中獲取數(shù)據(jù),這里采用的是DirectSound類來實(shí)現(xiàn)這個技術(shù)。一般聲卡采集到的數(shù)據(jù)會被存放到緩存區(qū)后進(jìn)行處理,如果是集成聲卡,那就是先把數(shù)據(jù)放在內(nèi)存中后再處理。它們的位置按照相對于緩沖區(qū)起始位置的偏移量計(jì)算?!?緩沖區(qū)通知大家應(yīng)該都知道時間相同的音頻文件,WAVE文件會比其它格式的音頻文件大得多,這是因?yàn)閃AVE文件沒有對數(shù)據(jù)進(jìn)行壓縮。如何才能在舊的數(shù)據(jù)沒有被覆蓋之前,將它轉(zhuǎn)移走呢?微軟提供了一個解決辦法:“通知”。 錄音大致過程如下: 1 設(shè)置PCM格式,設(shè)置相關(guān)的參數(shù),如:采樣頻率、量化位數(shù)等。 4 設(shè)置緩沖區(qū)通知,設(shè)置通知被觸發(fā)后的事件。7 錄音結(jié)束,寫入WAV文件尾。 2 建立采集用的設(shè)備對象,建立采集用的緩沖區(qū)對象。 5 當(dāng)通知被觸發(fā)后,建立一個新的線程來處理數(shù)據(jù)傳送的事件。2. 綁定本機(jī)的IP和端口,因?yàn)橐粋€主機(jī)可能會有不止一個IP地址,如回發(fā)地址: 和局域網(wǎng)地址:..。:(capturedata, epServer)。利用MemoryStream來代表這個接收緩沖區(qū)。//內(nèi)存流中播放指針位移(7) 文件傳輸?shù)膶?shí)現(xiàn)。//取消文件傳輸事件public event fileSendCancelEventHandler fileSendCancel。//接收文件發(fā)送超時public event fileSendOutTimeEventHandler fileSendOutTime。//觸發(fā)“文件取消發(fā)送事件”(自己取消的) } } private void linkSaveAs_LinkClicked(object sender, e) 。 case 1://對方發(fā)送“發(fā)送文件請求”過來,要求發(fā)送文件過去 ReadySendFile()。 case 3://對方發(fā)送消息告訴已經(jīng)收到上一次發(fā)送的文件數(shù)據(jù)塊 ReceivedFileMsg()。//上次接收的位置 private void ReceivedFileBlock(sendFileInfo msg)//當(dāng)對方發(fā)送文件數(shù)據(jù)塊過來 private void ReadySendFile()//準(zhǔn)備發(fā)送文件給對方 private void sendFileData()//發(fā)送文件 private string GetSpeedStr(int SendByteCount) private void userCancelSendFile()//當(dāng)對方“取消了文件傳輸” private void sockUDP1_DataArrival(byte[] Data, Ip, int Port) private void sendData(sendFileInfo fInfo) public void SendData( Ip,int Port,byte[] MsgContent) private void timer1_Tick(object sender, e)//保持UDP端口在外網(wǎng)上的映射 private void filesSend_fileSend(object sender, FileSendEventArgs e) { =false。如果有文件流到達(dá)本地后,就進(jìn)行讀取接收。在文件發(fā)送的時候,也獨(dú)立開辟了一個線程來處理。 服務(wù)器端控制臺窗體技術(shù)分析在本模塊中使用了BinaryFormatter對象,該對象是以二進(jìn)制格式將對象或整個連接對象序列化或反序列化。(3)在UDPSocket1的控件的DataArrival事件中,對客戶端發(fā)送的消息進(jìn)行監(jiān)聽,并根據(jù)發(fā)送的消息對數(shù)據(jù)庫進(jìn)行相應(yīng)的操作。6 系統(tǒng)特色及關(guān)鍵技術(shù)(1)當(dāng)窗體上邊框拖動到屏幕頂端時,窗體會自動隱藏。//存儲當(dāng)前窗體在屏幕的所在區(qū)域if (( 0) amp。amp。//將窗體隱藏到屏幕的頂端 }(2)為了使程序窗口的界面看起來更加的美觀、大方。(3)該程序中還使用的系統(tǒng)托盤圖標(biāo)的功能。(4)此外,還對窗體圖標(biāo)已經(jīng)可執(zhí)行程序的圖標(biāo)都進(jìn)行插入“”圖片,使程序看起來更加的美觀、大方。打包的時候,只要將程序使用的到的相關(guān)的動態(tài)鏈接庫和可執(zhí)行文件進(jìn)行打包即可。(1)用戶首先啟動服務(wù)器端。(5)在窗體中,雙擊在線人員的名稱,即可彈出
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1