私のタイトルは私の問題を説明しています...それを解決するために何もできません。
USBケーブルで接続されたシリアルCOMデバイスです(適切なドライバがインストールされています)。また、COM ポートがシステムによって検出され、次のレジストリ キーに存在することがわかります: HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\SERIALCOMM
お知らせ下さい。
更新: 説明不足で申し訳ありません。おそらく、私はそれが起こる理由を考えました.値がHKLM\HARDWARE\DEVICEMAP\SERIALCOMMに追加/削除されたイベントでアプリがサブスクライブしました。そして、アプリはそれに気づいた直後にポートを開こうとしました。しかし、その時点ではポートの準備ができていない可能性があるため、「ポートが存在しません」というメッセージが表示されました。単純に Thread.Sleep(2000) で問題が解決しました。
しかし、このスリープ ソリューションは適切なソリューションとは思えません。たぶん、レジストリ以外に接続されているデバイスを別の場所で確認する必要がありますか? そのため、実際に存在し、接続する準備ができたときに接続します。
ご回答ありがとうございます。スタックオーバーフローが大好き!