シリアル デバイス インストールのプログラミング
Note
このトピックでは、従来の COM ポートのプログラミングについて説明します。 USB 接続シリアル ポートの詳細については、「USB シリアル ドライバー (Usbser.sys)」を参照してください。
このセクションには、シリアル デバイスのプログラミング インストールに関する次のトピックが含まれています:
シリアル ポートのプログラミングと COM ポートのインストール
プラグ アンド プレイのシリアル ポートと COM ポートのインストールのプログラミング
シリアル デバイスをインストールするためのその他のシリアル固有の要件はありません。
デバイスのインストールに関する一般的な情報については、デバイス インストール設計ガイドセクションをご覧ください。
シリアルデバイスの詳細については、シリアルデバイスとドライバをご覧ください。##このトピックについて
このトピックには、次の従来の COM ポートのトピックが含まれています。
16550 UART 互換インターフェイスを使用するシリアル デバイスのプログラミング インストール
16550 UART 互換インターフェイスを使用するシリアル デバイスのプログラミング インストール
Serial を下位レベルのデバイス フィルター ドライバーとして使用するプラグ アンド プレイ デバイスをインストールするには、次の手順を実行します。
デバイスの INF ファイルで、下位レベルのデバイス フィルタ ドライバとして Serial を指定します。フィルタ ドライバのインストールをご覧ください。
デバイスの SerialSkipExternalNaming エントリ値をゼロ以外の値に設定します。プラグ アンド プレイ シリアル デバイスのレジストリ設定をご覧ください。
Serenum デバイスのプログラミング インストール
Serenum によって列挙されるデバイスをインストールするには、デバイスに対して次ハードウェア ID 形式を使用します:
Serenum\XxxxYyyy
ここで、Xxxx は EISA 製造 ID を指定する 4 つの ASCII 文字のフィールドで、Yyyyは製品 ID を指定する 4 つの ASCII 文字のフィールドです。 Serenum ID は、プラグ アンド プレイ外部 COM デバイス仕様に記載されています。
レガシー COM ポートのプログラミング インストール
Serial ファンクション ドライバーは、常にレガシー シリアル ポートを COM ポートとして構成します。
Serial は、..\Services\Serial\Parameters キーの下にある対応する COM ポート サブキーを読み取ることで、レガシー ポートの存在を検出します。 レガシー COM ポートをインストールするには、このキーの下にデバイスのレガシー COM ポート サブキーを設定する必要があります。 COM ポートのサブキーには、従来の COM ポートのレジストリ設定が含まれています。
Serial がロードされると、レガシー ポートの LegacyDiscovered エントリ値をチェックすることによって、以前に検出されなかったレガシー ポートが特定されます。 このエントリ値が存在しないかゼロの場合、Serial は次のタスクを実行します:
IoReportDetectedDevice を呼び出して、デバイスをプラグ アンド プレイ マネージャーに報告します。
ポートの LegacyDiscovered エントリ値を 0x00000001 に設定します。これは、ポートが報告されていることを示します。
COM ポート サブキーの下のエントリ値の一部を、IoReportDetectedDevice によって返される物理デバイス オブジェクト (PDO) のプラグ アンド プレイ デバイス キーにコピーします。
Serial は、プラグ アンド プレイ デバイス キーの PortName エントリ値を、レガシー COM ポート サブキーの DosDevices エントリ値の値に設定します。 Serial がコピーする他のすべてのエントリ値については、同じエントリ値名が保持されます。 Serial がコピーするエントリ値の詳細については、Microsoft Windows Driver Kit (WDK) で提供されているシリアル サンプル コードをご覧ください。
IoReportDetectedDevice 呼び出しは、ポートをルート列挙デバイスとしてマークします。 その後のシステム起動時に、プラグアンドプレイマネージャーは INF ファイル内の情報に基づいてデバイスを自動的に設定します。
プラグ アンド プレイ マネージャーは、レガシー COM ポートに対して次の互換 ID を作成します: DETECTEDInternal\Serial および DETECTED\Serial。