瀏覽器中使用js呼叫Activex、NPAPI開啟串列埠並收發資料
阿新 • • 發佈:2019-01-05
IE瀏覽器中訪問COM口收發資料,可以訪問com口印表機、GSM 貓、手機、串列埠掃描槍等裝置,支援使用HEX 位元組傳送接收,更好地支援各種COM口裝置,可以用於web系統中訪問串列埠或者虛擬串列埠的硬體裝置。
為火狐瀏覽器和chrome瀏覽器製作的介面可以是串列埠控制元件在更多瀏覽器上訪問。
上圖使用ATD指令實現web頁面撥號,將撥號指令傳送到連線到電腦的手機可通過藍芽或資料線連線
點選【選擇並開啟串列埠】後列出已使用的串列埠列表供使用者選擇
頁面HTML程式碼如下
<input type="button" value="選擇並開啟串列埠" onclick="selcomport()"/> <textarea id="t_dataIn" style="width:100%;height:300px"></textarea> <br> <form onsubmit="send();return false;"> <input type="text" id="t_sdata" /> <input type="submit" value="傳送"/></form>
頁面js程式碼如下
var tcom = new ActiveXObject("TComm.mComm");
選擇並開啟埠
//選擇並開啟埠 function selcomport(){ var comNo=tcom.SelectComm(); //alert(tcom.ComList);獲取串列埠列表 if(comNo>0 && tcom.InitCom(comNo)){ //開啟串列埠 tcom.onDataIn=function(dat){ //接收串列埠返回資料 $("#t_dataIn").val($("#t_dataIn").val()+dat); } }else{ alert("開啟埠失敗!") } }
傳送資料
function send(){
tcom.SendData($("#t_sdata").val()+"\r");//往串列埠傳送資料
$("#t_sdata").val("");
}
關閉串列埠
function closeCom(){
tcom.CloseCom();
}
線上示例