全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:5309
推到 Plurk!
推到 Facebook!

LPT偵測問題

答題得分者是:ANDY8C
joseph_yu
一般會員


發表:3
回覆:2
積分:1
註冊:2011-07-22

發送簡訊給我
#1 引用回覆 回覆 發表時間:2012-01-31 14:23:26 IP:210.59.xxx.xxx 訂閱
小弟的發票機是用LPT,
我是用CreateFile的方式取得HANDLE值,
再以WriteFile的方式將資料寫入。

但我發現在開PORT的時候,
不管LPT是否有連接周邊,
仍然可以取得其LPT的HANDLE值,
就因為沒連接周邊但有HANDLE值時,
在WriteFile的時候會造成程式被鎖死的情形發生。

小弟已經爬文一陣子了,
找到一些方式有些不太懂有些也不適用,
譬如針對0x378腳位做偵測就不知如何執行,
所以想請教各位大大有沒有什麼方式是可以真正偵測是否有周邊連接。

系統環境為Windows Embedded POSReady 2009
開發平台為BCB XE

先在此感謝了!

joseph_yu
一般會員


發表:3
回覆:2
積分:1
註冊:2011-07-22

發送簡訊給我
#2 引用回覆 回覆 發表時間:2012-02-06 16:51:28 IP:210.59.xxx.xxx 訂閱
小弟已經找到方法,
使用WinIo去偵測LPT port的0x379狀態,
可以確認發票機是否有連結至LPT port上。

但是假如發票機電源未開啟,
0x379回傳的狀態還是有連結,
有這幾天不斷的爬文,
有人說LPT port不能偵測發票機狀態,
這是確定的嗎?

如否,
那還有什麼方式可以偵測發票機的狀態呢?
小弟真的拜託各位大大提供方式,
因為已經火燒屁股了,
拜託各位大大了!

編譯程式為BCB XE
系統環境為 Windows Embedded POSReady 2009

ANDY8C
資深會員


發表:114
回覆:582
積分:299
註冊:2006-10-29

發送簡訊給我
#3 引用回覆 回覆 發表時間:2012-02-10 17:49:43 IP:210.66.xxx.xxx 未訂閱

此 LPT 問題,困擾我好幾年..... 網路上各種答案都有.....

直到接到某 "很刁" 的案子,才狠下心研究...

我是用 nrCOMM 元件(要購買)

delphi 2007 nrComm 開發成功,上線1年多了,都 ok

實體的 LPT1 ,LPT2,LPT3 都可以監控
但是....
LPT PORT Address 若自設超過 0X9000 以上的,有時會偵測不到,目前無解,
不知是 OS,還是主機板..問題,這一段我就不理它..只用0x378,.....等常見的位址,很順利的.

nrComm 是否 for BCB ,不詳,您自己上網查看看.

------- 可偵測----
1. LPT 有無開機
2. LPT 開機中
3. LPT 是否 ON LINE
4. 缺紙或 色帶....
5. 機器異常,無法列印 (用在條碼標籤機上)



===================引 用 joseph_yu 文 章===================
小弟已經找到方法,
使用WinIo去偵測LPT port的0x379狀態,
可以確認發票機是否有連結至LPT port上。

但是假如發票機電源未開啟,
0x379回傳的狀態還是有連結,
有這幾天不斷的爬文,
有人說LPT port不能偵測發票機狀態,
這是確定的嗎?

如否,
那還有什麼方式可以偵測發票機的狀態呢?
小弟真的拜託各位大大提供方式,
因為已經火燒屁股了,
拜託各位大大了!

編譯程式為BCB XE
系統環境為 Windows Embedded POSReady 2009

------
---------------------------------------
偶爾才來 KTOP ,交流條碼問題,在 FB [條碼標籤達人] 社團留言,感恩.
編輯記錄
ANDY8C 重新編輯於 2012-02-10 02:56:06, 註解 無‧
系統時間:2024-11-21 17:10:23
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!