Почему я получаю исключение Java NoSuchPortException, если порт существует? - PullRequest
3 голосов
/ 12 июня 2010

Ниже приведен производственный код, я использую его для нового драйвера.portName - это COM4, ​​и этот порт существует на ПК (и я могу подключиться к нему с помощью гипертерминала), так почему же Javacomm генерирует исключение NoSuchPortException?COM4 обнаруживается нормально в устройстве mgr.тоже

    final String portName = getSerialPort();
    try {
        final CommPortIdentifier id = CommPortIdentifier.getPortIdentifier(portName);
        port = (SerialPort) id.open(getName(), 1000);
    } catch (NoSuchPortException nspe) {
        report(SeverityCode.LEVEL2, getName(), "PIN Pad is not connected to " + portName + " port, or the port does not exist.");
        return;
    } catch (PortInUseException piue) {
        report(SeverityCode.LEVEL2, getName(), portName + " port is already in-use by some other device. Reason: " + piue.getMessage());
        return;
    }

1 Ответ

2 голосов
/ 12 июня 2010

Попробуйте перечислить список портов, доступных в вашей системе, используя CommPortIdentifier.getPortIdentifiers(), и распечатайте список.Вы уверены, что установили jarfiles и dll в правильные папки?Если да, попробуйте добавить COM4, ​​используя CommPortIdentifier.addPortName(java.lang.String portName, int portType, CommDriver driver). Вы можете установить для параметра драйвера значение null, чтобы использовать драйвер по умолчанию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...