idTcpClient.WriteBuffer 問題 |
答題得分者是:martinchoi
|
gloria.hk
一般會員 發表:18 回覆:17 積分:7 註冊:2005-01-07 發送簡訊給我 |
各位大大, 我在程式中利用idTcpClient 傳送 byte array 去知伺服器去, 但發現以下奇怪情況:
aBuf: array of byte;
aBuf = (48, 48, 48, 48, 52, 48, 49, 50, 51); // i.e.000040123
idTcpClient.WriteBuffer(aBuf, 9, True);
在監測tcp transaction 的軟件卻見傳送出去的是: 4C 8C D9 00 CC 6E D9 00 00
大家有何意見呢? ---
http://gloriaho.blogspot.com
|
gloria.hk
一般會員 發表:18 回覆:17 積分:7 註冊:2005-01-07 發送簡訊給我 |
|
martinchoi
一般會員 發表:0 回覆:1 積分:5 註冊:2003-03-23 發送簡訊給我 |
問題一
aBuf: array of byte;
aBuf = (48, 48, 48, 48, 52, 48, 49, 50, 51); // i.e.000040123
idTcpClient.WriteBuffer(aBuf[1], 9, True);
如果你放 aBuf 是會出錯的, 它會出了該 aBuf 的 pointer 出去. 所以你要修改為 aBuf[1]. 問題二
如果用idTcpClient.Write('000040123');
在監測tcp transaction 的軟件卻見傳送出去的是:30 30 30 30 34 30 31 32 33
你這次是用 string 出去, 所以 result 很正常 30 是 '0' 的 ascii code. 其它的如此類推.
|
gloria.hk
一般會員 發表:18 回覆:17 積分:7 註冊:2005-01-07 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |