vb.net ms comm获得异常

时间:2011-11-27 09:09:06

标签: vb.net serial-port serial-communication mscomm32 mscomct2.ocx

我在应用程序中使用microsoft com control 6.0将数据发送到led控件

         MSComm1.EOFEnable = True
        MSComm1.SThreshold = 100
        MSComm1.InputLen = 0
        MSComm1.RThreshold = 1
        MSComm1.InBufferCount = 0
        MSComm1.OutBufferCount = 0
        MSComm1.NullDiscard = False
        MSComm1.CommPort =1
        MSComm1.PortOpen = True <-Getting exception to this line
        ......

我正在从 HRESULT:0x800A1F45 中查找异常。为什么此端口未打开。 当我通过vb6运行时,我没有得到错误......任何人都可以帮助我...

1 个答案:

答案 0 :(得分:1)

错误800A1F45通常表示该端口正被另一个应用程序使用。

您可以根据this Wikipedia article解码HRESULT。对于0x800A1F45,您会找到:

  • 第三位为0,因此是Microsoft错误
  • 设施位为十六进制0xA或十进制10,根据MSDN list表示“控制”
  • 错误代码位为十六进制0x01F45或十进制8005.根据error list for the MSComm control表示“端口已打开”