COM ポートの外部の名前付け

デフォルトでは、シリアル ファンクション ドライバーはシリアル ポートのシンボリック リンク名を作成し、ポートの GUID_DEVINTERFACE_COMPORT デバイス インターフェイス を登録します。 定義上、シリアル ポートは、COM ポート デバイス インターフェイスが関連付けられている場合にのみ COM ポートとなります。

プラグ アンド プレイ シリアル デバイスの場合、外部命名は、デバイスのハードウェア キーの下にある SerialSkipExternalNaming エントリ値によって制御されます。 SerialSkipExternalNaming エントリ値が存在しない場合、またはその値が 0 の場合、Serial は COM ポート デバイス インターフェイスを作成します。そうしないと、シリアルは COM ポート インターフェイスを作成しません。 Serial はレガシー COM ポートのこのエントリ値をサポートせず、常にレガシー COM ポートの COM ポート デバイス インターフェイスを作成します。

シリアルは次のタスクを実行して、COM ポート デバイス インターフェイスを作成します:

  • \DosDevices\<PortName> と COM ポートの内部デバイス オブジェクト名の間にシンボリック リンクを作成します。

    <PortName> は、COM ポートの PortName (またはIdentifier) エントリ値です。 Ports クラスのインストーラはPortName を COM<n> に設定します。ここで <n> はインストーラが COM ポート データベース から取得した COM ポート番号です。 シリアルは、この名前を使用してポートへのシンボリック リンクを作成します。 Windows がサポートする COM ポートの数に制限はありません。 ユーザー モード クライアントは、シンボリック リンク名を使用して COM ポートを開きます。

  • \Registry\Machine\Hardware\DeviceMap\SERIALCOMM キーにエントリ値を書き込みます。

    エントリ値の名前は \Device\Serial<m> です。<m> は Serial によってデバイスに割り当てられた番号です。 シリアルデバイス番号 <m> は COM ポート番号 <n> とは異なることに注意してください。 \Device\Serial<m> の値は PortName の値に設定されます。

  • GUID_DEVINTERFACE_COMPORT タイプのデバイス インターフェイスを COM ポートに登録します。

    クライアントは、COM ポート インターフェイスの到着の通知を登録したり、登録されているすべての COM ポート インターフェイスのシンボリック リンク名を取得したりできます。

Serial がレジストリ エントリ値を使用する方法の詳細については、Serial のレジストリ設定をご覧ください。