線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:983
推到 Plurk!
推到 Facebook!

網路傳輸資料由檔案或位置之類的問題

缺席
rik
一般會員


發表:40
回覆:81
積分:24
註冊:2004-09-24

發送簡訊給我
#1 引用回覆 回覆 發表時間:2004-11-04 15:12:45 IP:163.13.xxx.xxx 未訂閱
在自己做的form裡得到了資訊 是因該先把它變成一個檔案 再利用TMemoryStream      TMemoryStream *msFile=new TMemoryStream;     msFile->LoadFromFile();    在傳輸 還是直接有傳輸的方法 或 TMemoryStream還有其他使用法    此外 關於宣告 MYPACK -----------------別人寫的範例@@"----------------------- TMemoryStream *msFile=new TMemoryStream;    msFile->LoadFromFile("hand(s2c).jpg");    MYPACK mp;    int i=0;    int block=(msFile->Size%MAX_DATASIZE==0)?       msFile->Size/MAX_DATASIZE: msFile->Size/MAX_DATASIZE+1;       for(i=0; iSize; mp.dwThisDataSize=((i 1)*MAX_DATASIZE>msFile->Size)? msFile->Size-i*MAX_DATASIZE: MAX_DATASIZE; msFile->Position=i*MAX_DATASIZE; msFile->Read(mp.pbThisData, mp.dwThisDataSize); ServerSocket1->Socket->Connections[0]->SendBuf(&mp, sizeof(MYPACK)); Sleep(10); } delete msFile; --------------------------範例完------------------------- 是否有MYPACK的相關使用法 資料範例 [用收尋找到不多~"~] 以下是我對此範例的理解 有錯請糾正我 -------------------------------------------------- 是不是利用TMemoryStream 把要傳的東西放到記憶體中 再用pointer 讓PACK把資料傳出 -------------------------------------------------- 發表人 - rik 於 2004/11/04 18:26:02
------
時與不時的撿起身旁的拼圖碎片

不懂的部分 半解的部分 就像一塊拼圖
留於腦中 等待拼出完美解答的一天

這就是我的思路 我的創作方法
而我也接受 這作法所帶來的"代價" - 時間
solnone
中階會員


發表:2
回覆:97
積分:69
註冊:2003-05-06

發送簡訊給我
#2 引用回覆 回覆 發表時間:2004-11-05 02:47:23 IP:218.168.xxx.xxx 未訂閱
先利用TMemoryStream 把要傳的東西放到記憶體中 範例中的 MYPACK 是這範例自行定義的,主要 是用來做將一個大資訊分成多個小 package 來傳輸! msFile->Read(mp.pbThisData, mp.dwThisDataSize); 並加入一些資訊!讓接收者可以組合回來
rik
一般會員


發表:40
回覆:81
積分:24
註冊:2004-09-24

發送簡訊給我
#3 引用回覆 回覆 發表時間:2004-11-05 11:35:17 IP:163.13.xxx.xxx 未訂閱
引言: 先利用TMemoryStream 把要傳的東西放到記憶體中 範例中的 MYPACK 是這範例自行定義的,主要 是用來做將一個大資訊分成多個小 package 來傳輸! msFile->Read(mp.pbThisData, mp.dwThisDataSize); 並加入一些資訊!讓接收者可以組合回來
"MYPACK 是這範例自行定義的" 1.你是指他自己創造此物件的@@? 那麼 ---------------------------------------------------- lstrcpy(mp.szFileName, "hand(s2c).jpg"); mp.dwPackTotal=block; mp.dwPackCount=i; mp.dwTotalDataSize=msFile->Size; mp.dwThisDataSize=((i 1)*MAX_DATASIZE>msFile->Size)? msFile->Size-i*MAX_DATASIZE: MAX_DATASIZE; -------------------------------------------------------- 中的 mp.XXXX 是如何得知的@@? 2.如果是他自己創造的 為何我的電腦還是能使用此程式@@? 因為在他附的檔案中 沒看到關於定義MYPACK的東西@@" 3.還是我弄錯意思了@@? "先利用TMemoryStream 把要傳的東西放到記憶體中" 是不是表示我可以這麼作 宣告一塊記憶體 給自己程式 存要傳的 東西用 最後再把指標送給 TMemoryStream 在使之傳出 如 -------------------自寫@@ 有錯請說----------- int SaveSendData[20]; TMemoryStream *msFile=new TMemoryStream; ... .... 當按鈕按下時 SaveSendData[0]=2; .... SaveSendData[3]=10; .. //在執行程式中改變要寄的值 //最後 msFile=&SaveSendData //接下再去傳送出 -----------------是否是這樣呢@@?------------- 發表人 - rik 於 2004/11/05 11:45:54
------
時與不時的撿起身旁的拼圖碎片

不懂的部分 半解的部分 就像一塊拼圖
留於腦中 等待拼出完美解答的一天

這就是我的思路 我的創作方法
而我也接受 這作法所帶來的"代價" - 時間
solnone
中階會員


發表:2
回覆:97
積分:69
註冊:2003-05-06

發送簡訊給我
#4 引用回覆 回覆 發表時間:2004-11-06 01:44:25 IP:218.168.xxx.xxx 未訂閱
你的範例檔應會有*.h 或 *.hpp 的檔案 include 進來 找找看用了那些,是在那定義的就會找得到了!
系統時間:2024-11-27 20:37:00
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!