`
suigara
  • 浏览: 80681 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

js读取串口 -- 解决没反应的问题

 
阅读更多
最关键的就是这个activeX了
<OBJECT id=MSComm1 CLASSID="clsid:648A5600-2C6E-101B-82B6-000000000014"
 codebase="MSCOMM32.OCX" type="application/x-oleobject"  style="LEFT:54px;TOP:14px" >
      <PARAM   NAME="CommPort"   VALUE="3"/> 
     <PARAM   NAME="Settings"   VALUE="9600,N,8,1"/>     

     <PARAM   NAME="RTSEnable"   VALUE="1"/> 
     <PARAM   NAME="DTREnable"   VALUE="1"/> 
     <PARAM   NAME="Handshaking"   VALUE="0"/> 
     <PARAM   NAME="NullDiscard"   VALUE="0"/> 
     <PARAM   NAME="ParityReplace"   VALUE="?"/>
 
     <PARAM   NAME="EOFEnable"   VALUE="0"/>       
     <PARAM   NAME="InputMode"   VALUE="0"/>    
     <PARAM   NAME="InBufferSize"   VALUE="1024"/>       
     <PARAM   NAME="InputLen"   VALUE="0"/>     
     <PARAM   NAME="OutBufferSize"   VALUE="512"/> 
     
     <PARAM   NAME="SThreshold"   VALUE="0"/> 
     <PARAM   NAME="RThreshold"   VALUE="1"/> 

</OBJECT>

然后就是事件处理
<SCRIPT   LANGUAGE=javascript   FOR=MSComm1   EVENT=OnComm> 
   <!--
   // MSComm1控件每遇到 OnComm 事件就调用 MSComm1_OnComm()函数
           MSComm1_OnComm()
    //--> 
   </SCRIPT>  
 
网上的代码也很多
但是开始用的时候发现我这没报错,但就是没反应
比如我打开com3,再用串口助手开com3 居然也成功了
肯定是我js没连上

最终发现是注册的问题:
我机器上不知道怎么以前装过mscomm32.ocx 而且装的好像还不对
classid 也是:648A5600-2C6E-101B-82B6-000000000014

解决办法:
在注册表搜索 648A5600-2C6E-101B-82B6-000000000014 
把找到的全部删除
然后重新注册就可以了

遇到同样问题的可以试试

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics