上一篇主題 :: 下一篇主題 |
發表人 |
內容 |
chiibin
註冊時間: 2006-05-19 文章: 8
第 1 樓
|
發表於: 星期二 六月 13, 2006 11:26 am 文章主題: 請問關於MSComm的問題 |
|
|
我在VFP中用MSComm來控制字幕顯示器
其中有些碼是0xa1h和0xd1h
超過0x7Fh之後的碼傳輸會有問題(似乎會和中文字的碼搞混)
請問有人有遇過類似的問題嗎? |
|
回頂端 |
|
 |
garfield Site Admin

註冊時間: 2003-01-30 文章: 2160
第 2 樓
|
發表於: 星期三 六月 14, 2006 10:26 am 文章主題: |
|
|
映像中有一個屬性可以設成 文字模式或二進位字串模式. _________________ 利用>>搜尋<<的功能會比問的還要快得到答案. |
|
回頂端 |
|
 |
siger1762
註冊時間: 2005-04-01 文章: 13 來自: 台灣 台中
第 3 樓
|
發表於: 星期三 六月 14, 2006 10:51 am 文章主題: |
|
|
試試看CreateBinary() |
|
回頂端 |
|
 |
chiibin
註冊時間: 2006-05-19 文章: 8
第 4 樓
|
發表於: 星期五 六月 16, 2006 2:50 pm 文章主題: |
|
|
請問一下,用createbinary將字串都給轉成了16進制的ascii值
例:"你好嗎123"->"A741A66EB6DC3132330000000000000000"
我該如何來output資料
我原始程式如下:
Local content,datatext,checksum
content="A1"+Chr(0xa1)+Chr(1)+Chr(2)+"A"+Chr(0xd0)+"1234567890"+"A"
checksum=0
For i=1 TO Len(content)
checksum=Bitxor(checksum,Asc(Substr(content,i,1)))
ENDFOR
thisform.text1.Value=STR(checksum)
Thisform.Com1.Output=Chr(2)+content+CHR(checksum)+Chr(3)
新手請多指教 |
|
回頂端 |
|
 |
chiibin
註冊時間: 2006-05-19 文章: 8
第 5 樓
|
發表於: 星期一 六月 19, 2006 1:36 pm 文章主題: |
|
|
我會控制了,看了下篇說明
http://vfp.sunyear.com.tw/viewtopic.php?t=338&highlight=MSCOMM32
Local content,datatext,checksum
content="A1"+Chr(0xa1)+Chr(1)+Chr(2)+"A"+Chr(0xd0)+"1234567890"+"A"
checksum=0
For i=1 TO Len(content)
checksum=Bitxor(checksum,Asc(Substr(content,i,1)))
ENDFOR
thisform.text1.Value=STR(checksum)
output1=Chr(2)+content+CHR(checksum)+Chr(3)
&&把下面這行改成這樣就行了
Thisform.Com1.Output=CREATEBINARY(output1)
感謝樓上前輩們的說明 |
|
回頂端 |
|
 |
|