использование RXTX для связи с RS232 / как получить имя приложения? - PullRequest
0 голосов
/ 04 мая 2018

Я использую RXTX для связи с последовательным портом.

Это мой проект:

В открытом методе я даю имя приложения "Test"

public void connect(String portName) throws Exception {  
        CommPortIdentifier portIdentifier = CommPortIdentifier.getPortIdentifier(portName);  

        if (portIdentifier.isCurrentlyOwned()) {  
            System.out.println("port in use");  
        } else {  

            SerialPort serialPort = (SerialPort) portIdentifier.open("Test", 2000); 


            serialPort.setSerialPortParams( 9600, SerialPort.DATABITS_8, SerialPort.STOPBITS_1, SerialPort.PARITY_ODD);  


            CommPortSender.setWriterStream(serialPort.getOutputStream());  


            new CommPortReceiver(serialPort.getInputStream()).start();  
          //  System.out.println(serialPort.get);
        }  
    }  

это детали параметров:

public CommPort open(java.lang.String appname,int timeout)
          throws PortInUseException

appname - Имя приложения, выполняющего этот вызов. Это имя станет владельцем порта. Полезно при разрешении спора о праве собственности.

timeout - Время в миллисекундах для блокировки ожидания открытия порта.

Как я могу получить имя приложения, которое я дал при открытом методе в следующая функция:

private void onMessage() { 
    if (tail!=0) {         
        String message = getMessage(buffer, tail);  
        System.out.println("received message: " + message);  

        tail = 0;  
    }  
}  

Я ищу Google, но не знаю, как описать эту проблему. Пожалуйста помоги. Заранее спасибо и, пожалуйста, прости мой плохой английский.

...