vb.net ms comm получение исключения - PullRequest
1 голос
/ 27 ноября 2011

Я использовал Microsoft ComCom Control 6.0 в приложении для отправки данных на светодиодный элемент управления

         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 Ответ

1 голос
/ 27 ноября 2011

Ошибка 800A1F45 обычно означает, что порт используется другим приложением.

Вы можете декодировать HRESULT согласно этой статье Википедии .Для 0x800A1F45 вы найдете:

  • Третий бит равен 0, поэтому это ошибка Microsoft
  • Биты объекта - шестнадцатеричные 0xA или десятичные 10, что в соответствии с Список MSDN означает «Управление»
  • Биты кода ошибки: шестнадцатеричный 0x01F45 или десятичный 8005. Согласно списку ошибок для элемента управления MSComm это означает «Порт»уже открыт "
...