FTDI チップに基づく USB デバイスがあります。時々、そのドライバーが動けなくなります。
Linux では、デバイスが自動的に切断され、デフォルトのカーネルによって再接続される問題はありません。問題はデバイス名が変更されることだけです。これは udev ルールで修正できます。
Windows の下でスタックすると、アプリケーションのスレッドread()
またはwrite()
その時点で完全にハングします。それは殺されることも、によってTerminateThread
も、によってもできませんKillProcess
。
アプリを強制終了する唯一の方法は、USB デバイスを物理的に切断することです。
プログラムでデバイスの再接続を発行する方法はありますか?これにより、ドライバーのデッドロックが解消され、ポートを再度開いて作業を続行できるようになりますか?
管理者権限アプリケーションは、必要に応じて持つことができます。