請問protocol怎麼用stream傳 |
尚未結案
|
huangjulie
一般會員 發表:5 回覆:12 積分:3 註冊:2005-02-23 發送簡訊給我 |
|
dllee
站務副站長 發表:321 回覆:2519 積分:1711 註冊:2002-04-15 發送簡訊給我 |
您問題問題真大!!
以下以處理原則來作說明: 1先自己把 protocol 定義好,當然也可以用別人規範的 protocol
大部分的 protocol 會有 Client/Server 的不同。
2Server 主要是被動,當 Client 按 protocol 送指令來時,按 protocol
處理指令後回應給 Client。如果您的 Server 夠快,要處理的事也不多,
可以把處理 protocol 的部分直接寫在收到 Client 資料的事件中,處理完
直接傳回給它,如果要處理的事很多,那就把 Client 送來的指令存入處理
列表,另外再開一個 Timer/Thread 去處理它,處理完再回應 Client。
3Client 是主動要求資料者,在使用者操作程式的過程,按 protocol 把使用者
的操作轉成對應的 protocol 指令傳給 Server 作處置,等 Server 回應,
再把資料整理給使用者看。 Q:如何 Client/Server 互傳資料?
A:在本站有許多現成範例,請多多利用左上角的 [Ktop搜尋] Q:如何定 protocol?
A:如果您有裝 Indy 像
TIdFTP http://www.rfc-editor.org/rfc/rfc959.txt
TIdHTTP (1.0) http://www.rfc-editor.org/rfc/rfc1945.txt
TIdHTTP (1.1) http://www.rfc-editor.org/rfc/rfc2616.txt
... 都是一些公開的 protocol 在以上的 .txt 中也都有它們的運作說明,
而如果您是自己要用的 protocol 則只需要把您會用到在 Client/Server
之間可能的操作都考量到即可。 吃軟也吃硬 dllee.ktop.com.tw StatPlus 系統資源監測器 @ KTOP OpenPLC - IEC 61131-3 geOShell XP Like 中文版
------
http://www.ViewMove.com |
huangjulie
一般會員 發表:5 回覆:12 積分:3 註冊:2005-02-23 發送簡訊給我 |
|
dllee
站務副站長 發表:321 回覆:2519 積分:1711 註冊:2002-04-15 發送簡訊給我 |
clientsocket?? 是那個元件?
如果是用 TIdTCPClient 則用 Stream
TMemoryStream Stream=new TMemoryStream; Stream->Size=sizeof(Protocol); IdTCPClient->ReadBuffer( Stream->Memory , Stream->Size); ... IdTCPClient->WriteBuffer( Stream->Memory , Stream->Size);可以把您的問題說清楚一點嗎?站內網路程式高手很多(我不是啦) 但是您的問題會變成沒人回應的懸賞題,實在是因為看不懂您要問的問題, 如果您可以把問題描述清楚,相信有許多網友可以給您想要的回應。 < href="http://free.greenworld.com.tw/~dllee/" target="blank">吃軟也吃硬 dllee.ktop.com.tw StatPlus 系統資源監測器 @ KTOP OpenPLC - IEC 61131-3 geOShell XP Like 中文版
------
http://www.ViewMove.com |
Ktop_Robot
站務副站長 發表:0 回覆:3511 積分:0 註冊:2007-04-17 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |