Я получаю эту ошибку...
Срок таймаута семафора истек.
В этой строке...
ThePorts.ActivePort1.Open();
... но я получаю его время от времени. Когда это происходит, это происходит снова и снова. Тогда проблема уходит, часами или днями, затем она возвращается.
Последовательный порт - это USB с подключенным BlueTooth.
Я думаю, что у этого парня была очень похожая проблема, но не на С#
Заморозить на SerialPort.Open/DeviceIoControl/GetcommState с помощью usbser.sys
Насколько я могу судить, я прочитал всю его проблему и полученные комментарии и ответ, но я действительно не могу понять, какой из них исправил его проблему, или если С# существенно отличается от того, что он испытывал.
Спасибо за любую помощь для невежественного. Это фактический код, где это происходит.
public static void Open_ActivePortWeWillUse(String Drone_StringNameFromUser)
{
SerialPort TempSerialPort = new SerialPort(Drone_StringNameFromUser, (int) SerialPortSpeed);
ThePorts.ActivePort1 = TempSerialPort;
ThePorts.ActivePort1.DataBits = 8;
ThePorts.ActivePort1.Parity = Parity.None;
ThePorts.ActivePort1.StopBits = StopBits.One;
ThePorts.ActivePort1.DataReceived += new SerialDataReceivedEventHandler(OurBackGroundSerialPortReceiver);
ThePorts.ActivePort1.Open(); // "Sometimes" Error hits here
}